def save
if identity
update_params = {
'Size' => self.size,
'Iops' => self.iops,
'VolumeType' => self.type
}
service.modify_volume(self.identity, update_params)
true
else
requires :availability_zone
requires_one :size, :snapshot_id
if type == 'io1'
requires :iops
end
data = service.create_volume(availability_zone, size, create_params).body
merge_attributes(data)
if tags = self.tags
Fog.wait_for { self.reload rescue nil }
service.create_tags(
self.identity,
tags
)
end
if @server
self.server = @server
end
true
end
end