Sha256: 957447e1d7bf8a57d9a2ba635baffea1af075c1ad76f425f7efc3cc1388d7c94

Contents?: true

Size: 1.27 KB

Versions: 13

Compression:

Stored size: 1.27 KB

Contents

# coding: utf-8

module Fog
  module Compute
    class SakuraCloud
      class Real
        def create_server(options)
          if options[:switch]
            switchs = options[:switch].split(',')
            connectedswitches = switchs.map do |sw_id|
              {
                "ID" => sw_id
              }
            end
          else
            connectedswitches = [{"Scope"=>"shared", "BandWidthMbps"=>100}]
          end

          body = {
            "Server" => {
              "Name" => options[:name],
              "ServerPlan" => {
                "ID" => options[:serverplan].to_i
              },
              "ConnectedSwitches" => connectedswitches
            }
          }

          request(
            :headers => {
              'Authorization' => "Basic #{@auth_encode}"
            },
            :expects  => [201],
            :method => 'POST',
            :path => "#{Fog::SakuraCloud.build_endpoint(@api_zone)}/server",
            :body => Fog::JSON.encode(body)
          )
        end
      end # Real

      class Mock
        def create_server(options)
          response = Excon::Response.new
          response.status = 201
          response.body = {
          }
          response
        end
      end
    end # SakuraCloud
  end # Volume
end # Fog

Version data entries

13 entries across 11 versions & 2 rubygems

Version Path
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-sakuracloud-1.7.5/lib/fog/sakuracloud/requests/compute/create_server.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-sakuracloud-1.7.5/lib/fog/sakuracloud/requests/compute/create_server.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-sakuracloud-1.7.5/lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.7.5 lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.7.4 lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.7.3 lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.7.2 lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.7.1 lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.7.0 lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.6.0 lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.5.2 lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.5.1 lib/fog/sakuracloud/requests/compute/create_server.rb
fog-sakuracloud-1.5.0 lib/fog/sakuracloud/requests/compute/create_server.rb