Sha256: 0de54ec543da319b94d22c151d6474727ffe838438930fed5d71f11c89118e34
Contents?: true
Size: 1.24 KB
Versions: 15
Compression:
Stored size: 1.24 KB
Contents
require 'fog/core/model' module Fog module GoGrid class Compute class BlockInstantiationError < StandardError; end class Server < Fog::Model identity :id attribute :name attribute :image_id # id or name attribute :ip attribute :memory # server.ram attribute :state attribute :description # Optional attribute :sandbox # Optional. Default: False def initialize(attributes={}) super end def destroy requires :id connection.grid_server_destroy(@id) true end def image requires :image_id connection.grid_image_get(@image_id) end def ready? @state == 'On' end def save raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if identity requires :name, :image_id, :ip, :memory options['isSandbox'] = sandbox if sandbox options['server.ram'] = memory options['image'] = image_id data = connection.grid_server_add(name, image, ip, options) merge_attributes(data.body) true end end end end end
Version data entries
15 entries across 15 versions & 1 rubygems