aboutsummaryrefslogtreecommitdiff
path: root/lib/leap_cli/config/secrets.rb
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2014-02-10 00:08:46 -0800
committerelijah <elijah@riseup.net>2014-02-10 00:08:46 -0800
commit2877c1975bee30ef0b83b11c652e052c0001fd55 (patch)
tree5fc3d6782f75ea7c205accc99c59aae57be2ba4e /lib/leap_cli/config/secrets.rb
parent5e0fbedd18833379021c116d8700cf328f045a07 (diff)
downloadleap_cli-2877c1975bee30ef0b83b11c652e052c0001fd55.tar.gz
leap_cli-2877c1975bee30ef0b83b11c652e052c0001fd55.tar.bz2
different secrets for each environment
Diffstat (limited to 'lib/leap_cli/config/secrets.rb')
-rw-r--r--lib/leap_cli/config/secrets.rb20
1 files changed, 11 insertions, 9 deletions
diff --git a/lib/leap_cli/config/secrets.rb b/lib/leap_cli/config/secrets.rb
index 491870d..45a57e1 100644
--- a/lib/leap_cli/config/secrets.rb
+++ b/lib/leap_cli/config/secrets.rb
@@ -1,8 +1,6 @@
#
-#
# A class for the secrets.json file
#
-#
module LeapCli; module Config
@@ -14,10 +12,13 @@ module LeapCli; module Config
@discovered_keys = {}
end
- def set(key, value)
+ def set(key, value, environment=nil)
+ environment ||= 'default'
key = key.to_s
- @discovered_keys[key] = true
- self[key] ||= value
+ @discovered_keys[environment] ||= {}
+ @discovered_keys[environment][key] = true
+ self[environment] ||= {}
+ self[environment][key] ||= value
end
#
@@ -27,12 +28,13 @@ module LeapCli; module Config
# this should only be triggered when all nodes have been processed, otherwise
# secrets that are actually in use will get mistakenly removed.
#
- #
def dump_json(only_discovered_keys=false)
if only_discovered_keys
- self.each_key do |key|
- unless @discovered_keys[key]
- self.delete(key)
+ self.each_key do |environment|
+ self[environment].each_key do |key|
+ unless @discovered_keys[environment][key]
+ self[environment].delete(key)
+ end
end
end
end