Sha256: 4688b354f843eb9ffa4c7f76737013f13f970d40575da366b658ba66b939d702

Contents?: true

Size: 1.03 KB

Versions: 71

Compression:

Stored size: 1.03 KB

Contents

require 'fog/aws/models/iam/group'
require 'fog/aws/iam/paged_collection'

module Fog
  module AWS
    class IAM
      class Groups < Fog::AWS::IAM::PagedCollection

        attribute :username

        model Fog::AWS::IAM::Group

        def all(options = {})
          data, records = if self.username
                            response = service.list_groups_for_user(self.username, options)
                            [response.body, response.body['GroupsForUser']]
                          else
                            response = service.list_groups(options)
                            [response.body, response.body['Groups']]
                          end

          merge_attributes(data)
          load(records)
        end

        def get(identity)
          data = service.get_group(identity)

          group = data.body['Group']
          users = data.body['Users'].map { |u| service.users.new(u) }

          new(group.merge(:users => users))
        rescue Fog::AWS::IAM::NotFound
          nil
        end
      end
    end
  end
end

Version data entries

71 entries across 69 versions & 3 rubygems

Version Path
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-aws-2.0.1/lib/fog/aws/models/iam/groups.rb
fog-aws-3.0.0 lib/fog/aws/models/iam/groups.rb
fog-aws-2.0.1 lib/fog/aws/models/iam/groups.rb
fog-aws-2.0.0 lib/fog/aws/models/iam/groups.rb
fog-aws-1.4.1 lib/fog/aws/models/iam/groups.rb
fog-aws-1.4.0 lib/fog/aws/models/iam/groups.rb
fog-aws-1.3.0 lib/fog/aws/models/iam/groups.rb
fog-aws-1.2.1 lib/fog/aws/models/iam/groups.rb
fog-aws-1.2.0 lib/fog/aws/models/iam/groups.rb
fog-aws-1.1.0 lib/fog/aws/models/iam/groups.rb
fog-aws-1.0.0 lib/fog/aws/models/iam/groups.rb
fog-aws-0.13.0 lib/fog/aws/models/iam/groups.rb
fog-aws-0.12.0 lib/fog/aws/models/iam/groups.rb
fog-aws-0.11.0 lib/fog/aws/models/iam/groups.rb
fog-aws-0.10.0 lib/fog/aws/models/iam/groups.rb
fog-aws-0.9.4 lib/fog/aws/models/iam/groups.rb
fog-aws-0.9.3 lib/fog/aws/models/iam/groups.rb
fog-aws-0.9.2 lib/fog/aws/models/iam/groups.rb
fog-aws-0.9.1 lib/fog/aws/models/iam/groups.rb
fog-aws-0.9.0 lib/fog/aws/models/iam/groups.rb