99from SoftLayer .managers import storage_utils
1010from SoftLayer import utils
1111
12+
1213# pylint: disable=too-many-public-methods
1314
1415
@@ -65,6 +66,7 @@ def get_volume_details(self, volume_id, **kwargs):
6566 'serviceResourceBackendIpAddress,'
6667 'serviceResource[datacenter[name]],'
6768 'replicationSchedule[type[keyname]]]' ,
69+ 'notes' ,
6870 ]
6971 kwargs ['mask' ] = ',' .join (items )
7072 return self .client .call ('Network_Storage' , 'getObject' , id = volume_id , ** kwargs )
@@ -173,10 +175,10 @@ def order_replicant_volume(self, volume_id, snapshot_schedule, location, tier=No
173175 :return: Returns a SoftLayer_Container_Product_Order_Receipt
174176 """
175177
176- block_mask = 'billingItem[activeChildren,hourlyFlag],' \
177- 'storageTierLevel,osType,staasVersion,' \
178- 'hasEncryptionAtRest,snapshotCapacityGb,schedules,' \
179- 'intervalSchedule,hourlySchedule,dailySchedule,' \
178+ block_mask = 'billingItem[activeChildren,hourlyFlag],' \
179+ 'storageTierLevel,osType,staasVersion,' \
180+ 'hasEncryptionAtRest,snapshotCapacityGb,schedules,' \
181+ 'intervalSchedule,hourlySchedule,dailySchedule,' \
180182 'weeklySchedule,storageType[keyName],provisionedIops'
181183 block_volume = self .get_volume_details (volume_id , mask = block_mask )
182184
@@ -213,9 +215,9 @@ def order_duplicate_volume(self, origin_volume_id, origin_snapshot_id=None, dupl
213215 :return: Returns a SoftLayer_Container_Product_Order_Receipt
214216 """
215217
216- block_mask = 'id,billingItem[location,hourlyFlag],snapshotCapacityGb,' \
217- 'storageType[keyName],capacityGb,originalVolumeSize,' \
218- 'provisionedIops,storageTierLevel,osType[keyName],' \
218+ block_mask = 'id,billingItem[location,hourlyFlag],snapshotCapacityGb,' \
219+ 'storageType[keyName],capacityGb,originalVolumeSize,' \
220+ 'provisionedIops,storageTierLevel,osType[keyName],' \
219221 'staasVersion,hasEncryptionAtRest'
220222 origin_volume = self .get_volume_details (origin_volume_id , mask = block_mask )
221223 storage_class = storage_utils .block_or_file (origin_volume ['storageType' ]['keyName' ])
@@ -270,6 +272,16 @@ def order_modified_volume(self, volume_id, new_size=None, new_iops=None, new_tie
270272
271273 return self .client .call ('Product_Order' , 'placeOrder' , order )
272274
275+ def volume_set_note (self , volume_id , note ):
276+ """Set the notes for an existing block volume.
277+
278+ :param volume_id: The ID of the volume to be modified
279+ :param note: the note
280+ :return: Returns true if success
281+ """
282+ template = {'notes' : note }
283+ return self .client .call ('SoftLayer_Network_Storage' , 'editObject' , template , id = volume_id )
284+
273285 def delete_snapshot (self , snapshot_id ):
274286 """Deletes the specified snapshot object.
275287
@@ -295,9 +307,9 @@ def order_snapshot_space(self, volume_id, capacity, tier, upgrade, **kwargs):
295307 :param boolean upgrade: Flag to indicate if this order is an upgrade
296308 :return: Returns a SoftLayer_Container_Product_Order_Receipt
297309 """
298- object_mask = 'id,billingItem[location,hourlyFlag],' \
299- 'storageType[keyName],storageTierLevel,provisionedIops,' \
300- 'staasVersion,hasEncryptionAtRest'
310+ object_mask = 'id,billingItem[location,hourlyFlag],' \
311+ 'storageType[keyName],storageTierLevel,provisionedIops,' \
312+ 'staasVersion,hasEncryptionAtRest'
301313 volume = self .get_volume_details (volume_id , mask = object_mask , ** kwargs )
302314
303315 order = storage_utils .prepare_snapshot_order_object (self , volume , capacity , tier , upgrade )
0 commit comments