Class: Cumulus::IAM::IamUsers

Inherits:
IamResource show all
Defined in:
lib/iam/manager/IamUsers.rb

Overview

Public: Manager class for IAM Users

Instance Method Summary collapse

Methods inherited from IamResource

#diff, #diff_one, #list, #migrate, #migrate_additional, #sync, #sync_one, #update

Constructor Details

#initialize(iam) ⇒ IamUsers

Returns a new instance of IamUsers.



12
13
14
15
16
# File 'lib/iam/manager/IamUsers.rb', line 12

def initialize(iam)
  super(iam)
  @type = "user"
  @migration_dir = "users"
end

Instance Method Details

#aws_resourcesObject



30
31
32
# File 'lib/iam/manager/IamUsers.rb', line 30

def aws_resources
  @aws_users ||= init_aws_users
end

#create(difference) ⇒ Object



41
42
43
44
45
46
# 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_configObject



48
49
50
# File 'lib/iam/manager/IamUsers.rb', line 48

def empty_config
  UserConfig.new
end

#local_resourcesObject



18
19
20
21
22
23
24
# 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) ⇒ Object



26
27
28
# File 'lib/iam/manager/IamUsers.rb', line 26

def one_local(name)
  Loader.user(name)
end