Sha256: 2af4ffaf2b5e17777237fb5ece31e440c088c26683ca0c3cd93115692046fa0f

Contents?: true

Size: 1.6 KB

Versions: 14

Compression:

Stored size: 1.6 KB

Contents

module Fog
  module Compute
    class DigitalOcean
      class Real

        #
        # FIXME: missing ssh keys support
        #
        def create_server( name, 
                           size_id, 
                           image_id, 
                           region_id,
                           options = {} )

          query_hash = {
            :name        => name,
            :size_id     => size_id,
            :image_id    => image_id,
            :region_id   => region_id
          }

          if options[:ssh_key_ids]
            query_hash[:ssh_key_ids] = options[:ssh_key_ids]
          end
          
          request(
            :expects  => [200],
            :method   => 'GET',
            :path     => 'droplets/new',
            :query    => query_hash
          )
        end

      end

      class Mock

        def create_server( name, 
                           size_id, 
                           image_id, 
                           region_id,
                           options = {} )
          response = Excon::Response.new
          response.status = 200

          mock_data = {
            "id" => Fog::Mock.random_numbers(1).to_i,
            "event_id" => Fog::Mock.random_numbers(2).to_i,
            "name" => name,
            "size_id" => size_id,
            "image_id" => image_id,
            "region_id" => region_id,
            "status" => 'active'
          }

          response.body = {
            "status" => "OK",
            "droplet"  => mock_data
          }

          self.data[:servers] << mock_data
          response
        end

      end
    end
  end
end

Version data entries

14 entries across 14 versions & 3 rubygems

Version Path
gapinc-fog-1.12.1.2.1 lib/fog/digitalocean/requests/compute/create_server.rb
fog-1.14.0 lib/fog/digitalocean/requests/compute/create_server.rb
fog-1.13.0 lib/fog/digitalocean/requests/compute/create_server.rb
gapinc-fog-1.12.1.2 lib/fog/digitalocean/requests/compute/create_server.rb
gapinc-fog-1.12.1.1 lib/fog/digitalocean/requests/compute/create_server.rb
gapinc-fog-1.12.1a lib/fog/digitalocean/requests/compute/create_server.rb
gapinc-fog-1.12.1 lib/fog/digitalocean/requests/compute/create_server.rb
fog-1.12.1 lib/fog/digitalocean/requests/compute/create_server.rb
fog-1.12.0 lib/fog/digitalocean/requests/compute/create_server.rb
vagrant-shell-0.2.6 vendor/bundle/gems/fog-1.10.1/lib/fog/digitalocean/requests/compute/create_server.rb
vagrant-shell-0.2.5 vendor/bundle/gems/fog-1.10.1/lib/fog/digitalocean/requests/compute/create_server.rb
fog-1.11.1 lib/fog/digitalocean/requests/compute/create_server.rb
fog-1.11.0 lib/fog/digitalocean/requests/compute/create_server.rb
fog-1.10.1 lib/fog/digitalocean/requests/compute/create_server.rb