module Bosh::Gen::Settings
Public Instance Methods
migrate_old_settings()
click to toggle source
# File lib/bosh/gen/settings.rb, line 59 def migrate_old_settings end
reload_settings!()
click to toggle source
# File lib/bosh/gen/settings.rb, line 54 def reload_settings! @settings = nil settings end
save_settings!()
click to toggle source
Saves current nested ReadWriteSettings into pure Hash-based YAML file Recreates accessors on ReadWriteSettings object (since something has changed)
# File lib/bosh/gen/settings.rb, line 49 def save_settings! File.open(settings_path, "w") { |f| f << settings.to_nested_hash.to_yaml } settings.create_accessors! end
setting(nested_key, value)
click to toggle source
Set a nested setting with “key1.key2.key3” notation
# File lib/bosh/gen/settings.rb, line 42 def setting(nested_key, value) settings.set(nested_key, value) save_settings! end
settings()
click to toggle source
# File lib/bosh/gen/settings.rb, line 29 def settings @settings ||= begin unless File.exists?(settings_path) FileUtils.mkdir_p(settings_dir) File.open(settings_path, "w") { |file| file << "--- {}" } end FileUtils.chmod(0600, settings_path) FileUtils.chmod(0700, settings_ssh_dir) if File.directory?(settings_ssh_dir) ReadWriteSettings.new(settings_path) end end
settings_dir()
click to toggle source
The base directory for holding the manifest settings file and private keys
Defaults to ~/.bosh_inception; and can be overridden with either:
-
$SETTINGS - to a folder (supported method)
# File lib/bosh/gen/settings.rb, line 11 def settings_dir @settings_dir ||= File.expand_path(ENV["SETTINGS"] || "~/.bosh-gen") end
settings_dir=(settings_dir)
click to toggle source
# File lib/bosh/gen/settings.rb, line 15 def settings_dir=(settings_dir) @settings_dir = File.expand_path(settings_dir) @settings = @settings_path = nil reload_settings! end
settings_path()
click to toggle source
# File lib/bosh/gen/settings.rb, line 25 def settings_path @settings_path ||= File.join(settings_dir, "settings.yml") end
settings_ssh_dir()
click to toggle source
# File lib/bosh/gen/settings.rb, line 21 def settings_ssh_dir File.join(settings_dir, "ssh") end