File tree Expand file tree Collapse file tree 1 file changed +18
-4
lines changed
Expand file tree Collapse file tree 1 file changed +18
-4
lines changed Original file line number Diff line number Diff line change @@ -334,15 +334,29 @@ def start_update(self):
334334
335335 return DSSFuture (self .client , future_response .get ('jobId' , None ), future_response )
336336
337- def delete (self ):
337+ def delete (self , force = False ):
338338 """
339- Deletes this deployment
339+ Deletes this deployment.
340+
341+ :param boolean force: If True, automatically disables deployment before deletion
340342
341343 You may only delete a deployment if it is disabled and has been updated after disabling it.
342344 """
343- return self .client ._perform_empty (
344- "DELETE" , "/api-deployer/deployments/%s" % (self .deployment_id ))
345345
346+ # Check is the deployment is disabled
347+ is_enabled = self .get_status ().light_status .get ("deploymentBasicInfo" ).get ("enabled" )
348+ if (is_enabled and force ) or (not is_enabled ):
349+ if force :
350+ settings = self .get_settings ()
351+ settings .set_enabled (enabled = False )
352+ settings .save ()
353+ return self .client ._perform_empty (
354+ "DELETE" , "/api-deployer/deployments/%s" % (self .deployment_id ))
355+ else :
356+ raise Exception ("Deployment {} deletion failed: deployment must be disabled first." .format (self .deployment_id ))
357+
358+
359+
346360
347361class DSSAPIDeployerDeploymentSettings (object ):
348362 """
You can’t perform that action at this time.
0 commit comments