From 4b23cf8baef8a6ea4b7236bbb65f4d608f54417d Mon Sep 17 00:00:00 2001 From: Alex_geth Date: Wed, 29 Jun 2022 15:54:21 +0300 Subject: [PATCH] bservice module fix --- library/decort_bservice.py | 16 +++++++++++----- module_utils/decort_utils.py | 8 ++++---- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/library/decort_bservice.py b/library/decort_bservice.py index 04bcedc..5e1270e 100644 --- a/library/decort_bservice.py +++ b/library/decort_bservice.py @@ -101,13 +101,15 @@ class decort_bservice(DecortController): return def create(self): - self.bservice_id = self.bservice_provision( + self.bservice_id = self.bservice_id = self.bservice_provision( self.amodule.params['name'], self.amodule.params['rg_id'], - self.amodule.params['sshUser'], - self.amodule.params['sshKey'] + self.amodule.params['sshuser'], + self.amodule.params['sshkey'] ) - self.bservice_state(self.bservice_id,'enabled') + if self.bservice_id: + _, self.bservice_info = self.bservice_get_by_id(self.bservice_id) + self.bservice_state(self.bservice_info,'enabled',self.amodule.params['started']) return def action(self,d_state,started=False): @@ -115,6 +117,9 @@ class decort_bservice(DecortController): return def restore(self): + + self.result['failed'] = True + self.result['msg'] = "Restore B-Service ID {} manualy.".format(self.bservice_id) pass def destroy(self): @@ -182,6 +187,8 @@ class decort_bservice(DecortController): required=False, fallback=(env_fallback, ['DECORT_USER'])), name=dict(type='str', required=True), + sshuser=dict(type='str', required=False,default=None), + sshkey=dict(type='str', required=False,default=None), id=dict(type='int', required=False, default=0), rg_id=dict(type='int', default=0), rg_name=dict(type='str',default=""), @@ -267,7 +274,6 @@ def main(): subj.nop() if amodule.params['state'] in ('present','started'): subj.create() - subj.action(amodule.params['state'],amodule.params['started']) elif amodule.params['state'] in ('stopped', 'disabled','enabled'): subj.error() diff --git a/module_utils/decort_utils.py b/module_utils/decort_utils.py index 6f8cdd0..fd8bb7d 100644 --- a/module_utils/decort_utils.py +++ b/module_utils/decort_utils.py @@ -3200,7 +3200,7 @@ class DecortController(object): self.result['waypoints'] = "{} -> {}".format(self.result['waypoints'], "bservice_provision") - api_url = "/cloudapi/bservice/create" + api_url = "/restmachine/cloudapi/bservice/create" api_params = dict( name = bs_name, rgId = rgid, @@ -3250,7 +3250,7 @@ class DecortController(object): if bs_dict['status'] in ["CREATED", "ENABLED"] and desired_state == 'disabled': bsstate_api = "/restmachine/cloudapi/bservice/disable" expected_state = "DISABLED" - elif bs_dict['status'] == "DISABLED" and desired_state == 'enabled': + elif bs_dict['status'] in ["CREATED", "DISABLED"] and desired_state == 'enabled': bsstate_api = "/restmachine/cloudapi/bservice/enable" expected_state = "ENABLED" @@ -3291,7 +3291,7 @@ class DecortController(object): started) return - def bservice_delete(self,bs_id,permanently=False): + def bservice_delete(self,bs_id,permanently=True): self.result['waypoints'] = "{} -> {}".format(self.result['waypoints'], "bservice_delete") @@ -3300,7 +3300,7 @@ class DecortController(object): self.result['msg'] = "bservice_delete() in check mode: delete B-Service ID {} was requested.".format(bs_id) return - api_params = dict(serviceId=bs_id,permanently=False) + api_params = dict(serviceId=bs_id,permanently=permanently) self.decort_api_call(requests.post, "/restmachine/cloudapi/bservice/delete", api_params) # On success the above call will return here. On error it will abort execution by calling fail_json. self.result['failed'] = False