9.0.0
This commit is contained in:
@@ -42,6 +42,9 @@ class decort_rg(DecortController):
|
||||
else:
|
||||
self.rg_should_exist = False
|
||||
|
||||
if self.validated_rg_id and self.rg_facts['status'] != 'DESTROYED':
|
||||
self.check_amodule_args_for_change()
|
||||
|
||||
def get_info(self):
|
||||
# If this is the first getting info
|
||||
if not self.validated_rg_id:
|
||||
@@ -150,18 +153,20 @@ class decort_rg(DecortController):
|
||||
return
|
||||
|
||||
def create(self):
|
||||
self.validated_rg_id = self.rg_provision(self.validated_acc_id,
|
||||
self.amodule.params['rg_name'],
|
||||
self.amodule.params['owner'],
|
||||
self.amodule.params['description'],
|
||||
self.amodule.params['resType'],
|
||||
self.amodule.params['def_netType'],
|
||||
self.amodule.params['ipcidr'],
|
||||
self.amodule.params['extNetId'],
|
||||
self.amodule.params['extNetIp'],
|
||||
self.amodule.params['quotas'],
|
||||
"", # this is location code. TODO: add module argument
|
||||
)
|
||||
self.validated_rg_id = self.rg_provision(
|
||||
self.validated_acc_id,
|
||||
self.amodule.params['rg_name'],
|
||||
self.amodule.params['owner'],
|
||||
self.amodule.params['description'],
|
||||
self.amodule.params['resType'],
|
||||
self.amodule.params['def_netType'],
|
||||
self.amodule.params['ipcidr'],
|
||||
self.amodule.params['extNetId'],
|
||||
self.amodule.params['extNetIp'],
|
||||
self.amodule.params['quotas'],
|
||||
"", # this is location code. TODO: add module argument
|
||||
sdn_access_group_id=self.aparams['sdn_access_group_id'],
|
||||
)
|
||||
|
||||
if self.validated_rg_id:
|
||||
self.validated_rg_id, self.rg_facts = self.rg_find(
|
||||
@@ -237,6 +242,7 @@ class decort_rg(DecortController):
|
||||
ret_dict['computes'] = self.rg_facts['vms']
|
||||
ret_dict['uniqPools'] = self.rg_facts['uniqPools']
|
||||
ret_dict['description'] = self.rg_facts['desc']
|
||||
ret_dict['sdn_access_group_id'] = self.rg_facts['sdn_access_group_id']
|
||||
|
||||
return ret_dict
|
||||
|
||||
@@ -334,11 +340,34 @@ class decort_rg(DecortController):
|
||||
recursive_deletion=dict(
|
||||
type='bool',
|
||||
default=False,
|
||||
)
|
||||
),
|
||||
sdn_access_group_id=dict(
|
||||
type='str',
|
||||
),
|
||||
),
|
||||
supports_check_mode=True,
|
||||
)
|
||||
|
||||
|
||||
def check_amodule_args_for_change(self):
|
||||
check_errors = False
|
||||
|
||||
if (
|
||||
self.aparams['sdn_access_group_id'] is not None
|
||||
and (
|
||||
self.aparams['sdn_access_group_id']
|
||||
!= self.rg_facts['sdn_access_group_id']
|
||||
)
|
||||
):
|
||||
self.message(
|
||||
'Check for parameter "sdn_access_group_id" failed: '
|
||||
'cannot change sdn_access_group_id for an existing resource '
|
||||
f'group ID {self.validated_rg_id}.'
|
||||
)
|
||||
check_errors = True
|
||||
|
||||
if check_errors:
|
||||
self.exit(fail=True)
|
||||
|
||||
# Workflow digest:
|
||||
# 1) authenticate to DECORT controller & validate authentication by issuing API call - done when creating DECORTController
|
||||
# 2) check if the RG with the specified id or rg_name:name exists
|
||||
|
||||
Reference in New Issue
Block a user