Sha256: eef2716b465f3e1cc16657866445e27e13c4cf359f879e7905e6d1ec9015f045

Contents?: true

Size: 1.15 KB

Versions: 15

Compression:

Stored size: 1.15 KB

Contents

class Ey::Core::Client
  class Real
    def destroy_server(id,options={})

      request(
        :method => :delete,
        :path => "/servers/#{id}",
        :query => options
      )
    end
  end

  class Mock
    def destroy_server(id,options={})
      deprovision_procedure = lambda do |_|
        server = self.data[:servers][id]

        server.merge!("deleted_at" => Time.now, "deprovisioned_at" => Time.now)

        if slot_id = resource_identity(server["slot"])
          self.data[:slots][slot_id]["server"] = nil
        end

        self.data[:volumes].values.select {|v| v["server"] == url_for("/servers/#{id}") }.each do |volume|
          volume.merge!("deleted_at" => Time.now)
        end

        nil
      end

      request_id = self.uuid

      self.data[:requests][request_id] = {
        "id"          => request_id,
        "finished_at" => nil,
        "successful"  => "true",
        "started_at"  => Time.now,
        "resource"    => [:servers, id, deprovision_procedure],
        "type"        => "deprovision_server",
      }

      response(
        :body   => {"request" => {id: request_id}},
        :status => 201,
      )
    end
  end
end

Version data entries

15 entries across 15 versions & 2 rubygems

Version Path
ey-core-3.6.0.autoscaling1 lib/ey-core/requests/destroy_server.rb
ey-core-3.6.4 lib/ey-core/requests/destroy_server.rb
ey-core-3.6.3 lib/ey-core/requests/destroy_server.rb
ey-core-3.6.1 lib/ey-core/requests/destroy_server.rb
groove-ey-core-3.6.3 lib/ey-core/requests/destroy_server.rb
groove-ey-core-3.6.2 lib/ey-core/requests/destroy_server.rb
groove-ey-core-3.6.1 lib/ey-core/requests/destroy_server.rb
ey-core-3.5.0 lib/ey-core/requests/destroy_server.rb
ey-core-3.4.4 lib/ey-core/requests/destroy_server.rb
ey-core-3.4.2 lib/ey-core/requests/destroy_server.rb
ey-core-3.4.1 lib/ey-core/requests/destroy_server.rb
ey-core-3.4.0 lib/ey-core/requests/destroy_server.rb
ey-core-3.3.1 lib/ey-core/requests/destroy_server.rb
ey-core-3.3.0 lib/ey-core/requests/destroy_server.rb
ey-core-3.2.6 lib/ey-core/requests/destroy_server.rb