Sha256: 2d79f23eb41259a821dfdbd652ab6b4fd188f23631b349a6c8c421704eca0396
Contents?: true
Size: 1.32 KB
Versions: 3
Compression:
Stored size: 1.32 KB
Contents
module OpsWorks module CLI module Subcommands module IAM def self.included(thor) thor.class_eval do desc 'iam:allow USER [--stack STACK]', 'Allow an IAM user on a stack' option :stack, type: :array option :ssh, type: :boolean, default: true option :sudo, type: :boolean, default: true define_method 'iam:allow' do |user| stacks = parse_stacks(options.merge(active: true)) stacks.each do |stack| permission = stack.find_permission_by_user(user) next unless permission say "Updating permissions on #{stack.name}..." permission.update(ssh: options[:ssh], sudo: options[:sudo]) end end desc 'iam:lockdown [--stack STACK]', 'Remove all stack permissions' option :stack, type: :array define_method 'iam:lockdown' do stacks = parse_stacks(options.merge(active: true)) stacks.each do |stack| say "Locking down #{stack.name}..." stack.permissions.each do |permission| permission.update(ssh: false, sudo: false) end end end end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
opsworks-cli-0.7.1 | lib/opsworks/cli/subcommands/iam.rb |
opsworks-cli-0.7.0 | lib/opsworks/cli/subcommands/iam.rb |
opsworks-cli-0.6.0 | lib/opsworks/cli/subcommands/iam.rb |