Sha256: 2d96b707323c21e95c1f5a59a49c4ab3630dfed02d1f212f54c643a69f018412
Contents?: true
Size: 1.09 KB
Versions: 32
Compression:
Stored size: 1.09 KB
Contents
require 'fog/volume/openstack/models/volume' module Fog module Volume class OpenStack class V1 class Volume < Fog::Volume::OpenStack::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 service.update_volume(id, attributes.reject { |k, _v| k == :id }) 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
32 entries across 30 versions & 3 rubygems