class Ridoku::Env
Attributes
environment[RW]
Public Instance Methods
run()
click to toggle source
# File lib/ridoku/env.rb, line 17 def run command = Base.config[:command] sub_command = (command.length > 0 && command[1]) || nil environment = load_environment case sub_command when 'list', nil list when 'set', 'add' set when 'push' push when 'delete', 'remove', 'rm' delete else print_env_help end end
Protected Instance Methods
delete()
click to toggle source
# File lib/ridoku/env.rb, line 109 def delete ARGV.each do |key| value = environment.delete(key) $stdout.puts "Deleting key: #{key}, '#{value}'" end Base.save_stack end
list()
click to toggle source
# File lib/ridoku/env.rb, line 83 def list if environment.keys.length == 0 $stdout.puts 'Environment Empty!' else $stdout.puts 'Environment:' environment.each do |key, value| $stdout.puts " #{$stdout.colorize(key, :bold)}: '#{value}'" end end end
load_environment()
click to toggle source
# File lib/ridoku/env.rb, line 39 def load_environment Base.fetch_stack Base.fetch_app self.environment = Base.custom_json['deploy'][Base.app[:shortname]]['app_env'] end
print_env_help()
click to toggle source
# File lib/ridoku/env.rb, line 46 def print_env_help $stderr.puts <<-EOF Command: env List/Modify the current app's environment. env lists the key value pairs env:push push recipe changes env:set KEY:VALUE [...] env:delete KEY [...] examples: $ env Environment Empty! $ env:set AWS_ACCESS_KEY:'jas8dyfawenfi9f' $ env:set AWS_SECRET_KEY:'SJHDF3HSDOFJS4DFJ3E' $ env:delete AWS_SECRET_KEY $ env Environment: AWS_ACCESS_KEY: 'jas8dyfawenfi9f' EOF end
push()
click to toggle source
# File lib/ridoku/env.rb, line 68 def push $stdout.puts "Pushing current environment..." Base.standard_deploy(['rails-app','workers'], { opsworks_custom_cookbooks: { recipes: [ "workers::default", "deploy::environment" ] } } ) end
set()
click to toggle source
# File lib/ridoku/env.rb, line 94 def set ARGV.each do |kvpair| kvpair.match(%r((^[^:]+):(.*))) do |m| key = m[1] value = m[2] update = environment.key?(key) environment[key] = value $stdout.puts "#{update && 'Updating' || 'Adding'}: #{key} as '#{value}'" end end Base.save_stack end