Sha256: a77daef82c136f212b275dc679b9ce82f977139dc81ca02ef5389cf7663b9a4e
Contents?: true
Size: 1.29 KB
Versions: 11
Compression:
Stored size: 1.29 KB
Contents
require 'fog/core/model' module Fog module Compute class Serverlove class Image < Fog::Model identity :id, :aliases => 'drive' attribute :name attribute :user attribute :size attribute :claimed attribute :status attribute :imaging attribute :encryption_cipher, :aliases => 'encryption:cipher' def save attributes = {} if(identity) attributes = connection.update_image(identity, allowed_attributes).body else requires :name requires :size attributes = connection.create_image(allowed_attributes).body end merge_attributes(attributes) self end def load_standard_image(standard_image_uuid) requires :identity connection.load_standard_image(identity, standard_image_uuid) end def ready? status.upcase == 'ACTIVE' end def destroy requires :identity connection.destroy_image(identity) self end def allowed_attributes allowed = [:name, :size] attributes.select {|k,v| allowed.include? k} end end end end end
Version data entries
11 entries across 11 versions & 7 rubygems