Sha256: 8cab54e68acc336923bcdd400e27868c12c008e2865baebc0ffa235e11be1664
Contents?: true
Size: 1.17 KB
Versions: 17
Compression:
Stored size: 1.17 KB
Contents
require 'fog/openstack/volume/models/volume' module Fog module OpenStack class Volume class V1 class Volume < Fog::OpenStack::Volume::Volume identity :id superclass.attributes.each { |attrib| attribute attrib } attribute :display_name, :aliases => 'displayName' attribute :display_description, :aliases => 'displayDescription' attribute :tenant_id, :aliases => 'os-vol-tenant-attr:tenant_id' def save requires :display_name, :size data = if id.nil? service.create_volume(display_name, display_description, size, attributes) else attrib = attributes.select { |key| %i(display_name display_description metadata).include?(key) } service.update_volume(id, attrib) end merge_attributes(data.body['volume']) true end def update(attr = nil) requires :id merge_attributes( service.update_volume(id, attr || attributes).body['volume'] ) self end end end end end end
Version data entries
17 entries across 17 versions & 3 rubygems