Sha256: d5c77aa6180f5b5aebb6adde259b075f880a4462a15e3c2d78b3bf12e2d1df96

Contents?: true

Size: 1.32 KB

Versions: 21

Compression:

Stored size: 1.32 KB

Contents

module Fog
  module Brightbox
    class Compute
      class Real
        # Will issue a request to snapshot the Server
        #
        # @param [String] identifier Unique reference to identify the resource
        # @param [Hash] options
        # @option options [Boolean] :return_link Return the Link header as a second return value
        # @option options [Boolean] :nested passed through with the API request. When true nested resources are expanded.
        #
        # @return [Hash] if successful Hash version of JSON object
        #
        # @see https://api.gb1.brightbox.com/1.0/#server_snapshot_server
        #
        def snapshot_server(identifier, options = {})
          return nil if identifier.nil? || identifier == ""

          method = "POST"
          path = "/1.0/servers/#{identifier}/snapshot"
          expected = [202]

          if options[:return_link]
            request_parameters = {
              :method => method, :path => path, :expects => expected
            }
            response = request(request_parameters)
            data = Fog::JSON.decode(response.body)
            image_id = Fog::Brightbox::LinkHelper.new(response.headers["Link"]).identifier
            return data, image_id
          else
            wrapped_request(method, path, expected)
          end
        end
      end
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
fog-brightbox-1.10.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.9.1 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.9.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.8.2 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.8.1 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.8.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.7.3 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.7.2 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.7.1 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.7.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.6.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.5.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.5.0.rc1 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.4.2 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.4.1 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.4.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.3.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.2.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.1.0 lib/fog/brightbox/requests/compute/snapshot_server.rb
fog-brightbox-1.0.0 lib/fog/brightbox/requests/compute/snapshot_server.rb