Sha256: 1e9e7faae277f2286524ade29bf1a73783a2d5af89c41c08d2c18552c139a7f1

Contents?: true

Size: 1.57 KB

Versions: 1

Compression:

Stored size: 1.57 KB

Contents

module Fog
    module Compute
        class ProfitBricks
            class Real
                # Deletes the specified volume
                #
                # ==== Parameters
                # * datacenter_id<~String> - UUID of the data center
                # * volume_id<~String>      - UUID of the volume
                #
                # ==== Returns
                # * response<~Excon::Response> - No response parameters
                #   (HTTP/1.1 202 Accepted)
                #
                # {ProfitBricks API Documentation}[https://devops.profitbricks.com/api/cloud/v2/#delete-volume]
                def delete_volume(datacenter_id, volume_id)
                    request(
                        :expects => [202],
                        :method  => 'DELETE',
                        :path    => "/datacenters/#{datacenter_id}/volumes/#{volume_id}"
                    )
                rescue => error
                    Fog::Errors::NotFound.new(error)
                end
            end

            class Mock
                def delete_volume(datacenter_id, volume_id)
                  response = Excon::Response.new
                  response.status = 202

                  if vlm = self.data[:volumes]["items"].find {
                      |volume| volume["id"] == volume_id && volume["datacenter_id"] == datacenter_id
                  }
                  else
                    raise Fog::Errors::NotFound.new("The requested resource could not be found")
                  end

                  response
                end
            end
        end
    end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fog-profitbricks-2.0.1 lib/fog/profitbricks/requests/compute/delete_volume.rb