Sha256: 5a122d8f64fe8f5a3378f827e1964415ca9d326cd1b921a53f0cc49354325f19

Contents?: true

Size: 1.56 KB

Versions: 20

Compression:

Stored size: 1.56 KB

Contents

module Fog
  module Identity
    class OpenStack
      class V2
        class Real
          ##
          # Retrieves an EC2 credential for a user.  Requires administrator
          # credentials.
          #
          # ==== Parameters
          # * user_id<~String>: The id of the user to retrieve the credential
          #   for
          # * access<~String>: The access key of the credential to retrieve
          #
          # ==== Returns
          # * response<~Excon::Response>:
          #   * body<~Hash>:
          #     * 'credential'<~Hash>: The EC2 credential
          #       * 'access'<~String>: The access key
          #       * 'secret'<~String>: The secret key
          #       * 'user_id'<~String>: The user id
          #       * 'tenant_id'<~String>: The tenant id

          def get_ec2_credential(user_id, access)
            request(
                :expects => [200, 202],
                :method => 'GET',
                :path => "users/#{user_id}/credentials/OS-EC2/#{access}"
            )
          rescue Excon::Errors::Unauthorized
            raise Fog::Identity::OpenStack::NotFound
          end
        end

        class Mock
          def get_ec2_credential(user_id, access)
            ec2_credential = self.data[:ec2_credentials][user_id][access]

            raise Fog::OpenStack::Identity::NotFound unless ec2_credential

            response = Excon::Response.new
            response.status = 200
            response.body = {'credential' => ec2_credential}
            response
          end
        end
      end # class V2
    end
  end
end

Version data entries

20 entries across 20 versions & 3 rubygems

Version Path
fog-openstack-0.1.10 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.9 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.8 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.7 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.6 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.5 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.4 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.3 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.2 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.1 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-openstack-0.1.0 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-1.37.0 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-1.36.0 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-1.35.0 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-2.0.0.pre.0 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-1.32.0/lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-1.34.0 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-1.33.0 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-1.32.0 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb
fog-1.31.0 lib/fog/openstack/requests/identity_v2/get_ec2_credential.rb