class Cumulus::IAM::IamUsers

Public: Manager class for IAM Users

Public Class Methods

new(iam) click to toggle source
Calls superclass method Cumulus::IAM::IamResource::new
# File lib/iam/manager/IamUsers.rb, line 12
def initialize(iam)
  super(iam)
  @type = "user"
  @migration_dir = "users"
end

Public Instance Methods

aws_resources() click to toggle source
# File lib/iam/manager/IamUsers.rb, line 30
def aws_resources
  @aws_users ||= init_aws_users
end
create(difference) click to toggle source
# File lib/iam/manager/IamUsers.rb, line 41
def create(difference)
  @iam.create_user({
    :user_name => difference.local.name
  })
  Aws::IAM::User.new(difference.local.name, { :client => @iam })
end
empty_config() click to toggle source
# File lib/iam/manager/IamUsers.rb, line 48
def empty_config
  UserConfig.new
end
local_resources() click to toggle source
# File lib/iam/manager/IamUsers.rb, line 18
def local_resources
  local = {}
  Loader.users.each do |user|
    local[user.name] = user
  end
  local
end
one_local(name) click to toggle source
# File lib/iam/manager/IamUsers.rb, line 26
def one_local(name)
  Loader.user(name)
end

Private Instance Methods

init_aws_users() click to toggle source
# File lib/iam/manager/IamUsers.rb, line 34
def init_aws_users
  @iam.list_users().users.map do |user|
    Aws::IAM::User.new(user.user_name, { :client => @iam })
  end
end