Class: Fog::AWS::IAM::Roles

Inherits:
PagedCollection show all
Defined in:
lib/fog/aws/models/iam/roles.rb

Instance Method Summary collapse

Methods inherited from PagedCollection

#each, #each_entry, inherited

Instance Method Details

#all(options = {}) ⇒ Object



10
11
12
13
14
15
# File 'lib/fog/aws/models/iam/roles.rb', line 10

def all(options={})
  body = service.list_roles(page_params(options)).body

  merge_attributes(body)
  load(body["Roles"])
end

#get(identity) ⇒ Object



17
18
19
20
21
# File 'lib/fog/aws/models/iam/roles.rb', line 17

def get(identity)
  new(service.get_role(identity).body["Role"])
rescue Excon::Errors::NotFound, Fog::AWS::IAM::NotFound
  nil
end

#new(attributes = {}) ⇒ Object



23
24
25
26
27
28
29
# File 'lib/fog/aws/models/iam/roles.rb', line 23

def new(attributes = {})
  unless attributes.key?(:assume_role_policy_document)
    attributes[:assume_role_policy_document] = Fog::AWS::IAM::EC2_ASSUME_ROLE_POLICY.to_s
  end

  super
end