Sha256: 2c15746a976c83e5a6fefb4ff1566d79033855f339a50c8a0819c3284bb718d8

Contents?: true

Size: 1.37 KB

Versions: 26

Compression:

Stored size: 1.37 KB

Contents

module Fog
  module Compute
    class RackspaceV2
      class Real

        # Retreive single keypair details
        # @param [String] key_name name of the key for which to request the details
        # @return  [Excon::Response] response :
        #   * body [Hash]: -
        #     * 'keypair' [Hash]: -
        #       * 'fingerprint' [String]: unique fingerprint of the keypair
        #       * 'name' [String]: unique name of the keypair
        #       * 'public_key' [String]: the public key assigne to the keypair
        # @raise [Fog::Compute::RackspaceV2::NotFound]
        # @raise [Fog::Compute::RackspaceV2::BadRequest]
        # @raise [Fog::Compute::RackspaceV2::InternalServerError]
        # @raise [Fog::Compute::RackspaceV2::ServiceError]
        # @see   http://docs.rackspace.com/servers/api/v2/cs-devguide/content/ListKeyPairs.html
        def get_keypair(key_name)
          request(
            :method   => 'GET',
            :expects  => 200,
            :path     => "/os-keypairs/#{key_name}"
          )
        end
      end

      class Mock
        def get_keypair(key_name)
            key = self.data[:keypairs].select { |k| key_name.include? k['keypair']['name'] }.first
            if key.nil?
                raise Fog::Compute::RackspaceV2::NotFound
            end

            response(:body => key, :status => 200)
        end
      end

    end
  end
end

Version data entries

26 entries across 26 versions & 2 rubygems

Version Path
fog-maestrodev-1.18.0.20131209090811 lib/fog/rackspace/requests/compute_v2/get_keypair.rb
fog-maestrodev-1.18.0.20131206115947 lib/fog/rackspace/requests/compute_v2/get_keypair.rb
fog-maestrodev-1.18.0.20131205181604 lib/fog/rackspace/requests/compute_v2/get_keypair.rb
fog-maestrodev-1.18.0.20131127194823 lib/fog/rackspace/requests/compute_v2/get_keypair.rb
fog-maestrodev-1.18.0.20131126183714 lib/fog/rackspace/requests/compute_v2/get_keypair.rb
fog-maestrodev-1.18.0.20131126122111 lib/fog/rackspace/requests/compute_v2/get_keypair.rb