11.0.0
This commit is contained in:
@@ -107,7 +107,6 @@ class decort_rg(DecortController):
|
||||
ram='ram',
|
||||
disk='disksize',
|
||||
ext_ips='extips',
|
||||
net_transfer='exttraffic',
|
||||
storage_policies='policies',
|
||||
)
|
||||
if self.amodule.params['quotas']:
|
||||
@@ -407,73 +406,78 @@ class decort_rg(DecortController):
|
||||
# 4) if RG exists: check desired state, desired configuration -> initiate action accordingly
|
||||
# 5) report result to Ansible
|
||||
|
||||
def main():
|
||||
decon = decort_rg()
|
||||
amodule = decon.amodule
|
||||
#amodule.check_mode=True
|
||||
if decon.validated_rg_id > 0:
|
||||
if decon.rg_facts['status'] in ["MODELED", "DISABLING", "ENABLING", "DELETING", "DESTROYING", "CONFIRMED"]:
|
||||
decon.error()
|
||||
elif decon.rg_facts['status'] in ("CREATED"):
|
||||
if amodule.params['state'] == 'absent':
|
||||
decon.destroy()
|
||||
elif amodule.params['state'] == "disabled":
|
||||
decon.enable()
|
||||
if amodule.params['state'] in ['present', 'enabled']:
|
||||
if (
|
||||
amodule.params['quotas']
|
||||
or amodule.params['resType']
|
||||
or amodule.params['rename'] != ""
|
||||
or amodule.params['sep_pools'] is not None
|
||||
or amodule.params['description'] is not None
|
||||
):
|
||||
decon.update()
|
||||
if amodule.params['access']:
|
||||
decon.access()
|
||||
if amodule.params['def_netType'] is not None:
|
||||
decon.setDefNet()
|
||||
@DecortController.handle_sdk_exceptions
|
||||
def run(self):
|
||||
amodule = self.amodule
|
||||
#amodule.check_mode=True
|
||||
if self.validated_rg_id > 0:
|
||||
if self.rg_facts['status'] in ["MODELED", "DISABLING", "ENABLING", "DELETING", "DESTROYING", "CONFIRMED"]:
|
||||
self.error()
|
||||
elif self.rg_facts['status'] in ("CREATED"):
|
||||
if amodule.params['state'] == 'absent':
|
||||
self.destroy()
|
||||
elif amodule.params['state'] == "disabled":
|
||||
self.enable()
|
||||
if amodule.params['state'] in ['present', 'enabled']:
|
||||
if (
|
||||
amodule.params['quotas']
|
||||
or amodule.params['resType']
|
||||
or amodule.params['rename'] != ""
|
||||
or amodule.params['sep_pools'] is not None
|
||||
or amodule.params['description'] is not None
|
||||
):
|
||||
self.update()
|
||||
if amodule.params['access']:
|
||||
self.access()
|
||||
if amodule.params['def_netType'] is not None:
|
||||
self.setDefNet()
|
||||
|
||||
elif decon.rg_facts['status'] == "DELETED":
|
||||
if amodule.params['state'] == 'absent' and amodule.params['permanently'] == True:
|
||||
decon.destroy()
|
||||
elif (amodule.params['state'] == 'present'
|
||||
or amodule.params['state'] == 'disabled'):
|
||||
decon.restore()
|
||||
elif amodule.params['state'] == 'enabled':
|
||||
decon.restore()
|
||||
decon.enable()
|
||||
elif decon.rg_facts['status'] in ("DISABLED"):
|
||||
if amodule.params['state'] == 'absent':
|
||||
decon.destroy()
|
||||
elif amodule.params['state'] == ("enabled"):
|
||||
decon.enable()
|
||||
elif self.rg_facts['status'] == "DELETED":
|
||||
if amodule.params['state'] == 'absent' and amodule.params['permanently'] == True:
|
||||
self.destroy()
|
||||
elif (amodule.params['state'] == 'present'
|
||||
or amodule.params['state'] == 'disabled'):
|
||||
self.restore()
|
||||
elif amodule.params['state'] == 'enabled':
|
||||
self.restore()
|
||||
self.enable()
|
||||
elif self.rg_facts['status'] in ("DISABLED"):
|
||||
if amodule.params['state'] == 'absent':
|
||||
self.destroy()
|
||||
elif amodule.params['state'] == ("enabled"):
|
||||
self.enable()
|
||||
|
||||
else:
|
||||
if amodule.params['state'] in ('present', 'enabled'):
|
||||
if not amodule.params['rg_name']:
|
||||
decon.result['failed'] = True
|
||||
decon.result['msg'] = (
|
||||
'Resource group could not be created because'
|
||||
' the "rg_name" parameter was not specified.'
|
||||
)
|
||||
else:
|
||||
decon.create()
|
||||
if amodule.params['access'] and not amodule.check_mode:
|
||||
decon.access()
|
||||
elif amodule.params['state'] in ('disabled'):
|
||||
decon.error()
|
||||
|
||||
|
||||
if decon.result['failed']:
|
||||
amodule.fail_json(**decon.result)
|
||||
else:
|
||||
if decon.rg_should_exist:
|
||||
if decon.result['changed']:
|
||||
decon.get_info()
|
||||
decon.result['facts'] = decon.package_facts(amodule.check_mode)
|
||||
amodule.exit_json(**decon.result)
|
||||
else:
|
||||
amodule.exit_json(**decon.result)
|
||||
if amodule.params['state'] in ('present', 'enabled'):
|
||||
if not amodule.params['rg_name']:
|
||||
self.result['failed'] = True
|
||||
self.result['msg'] = (
|
||||
'Resource group could not be created because'
|
||||
' the "rg_name" parameter was not specified.'
|
||||
)
|
||||
else:
|
||||
self.create()
|
||||
if amodule.params['access'] and not amodule.check_mode:
|
||||
self.access()
|
||||
elif amodule.params['state'] in ('disabled'):
|
||||
self.error()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
if self.result['failed']:
|
||||
amodule.fail_json(**self.result)
|
||||
else:
|
||||
if self.rg_should_exist:
|
||||
if self.result['changed']:
|
||||
self.get_info()
|
||||
self.result['facts'] = self.package_facts(amodule.check_mode)
|
||||
amodule.exit_json(**self.result)
|
||||
else:
|
||||
amodule.exit_json(**self.result)
|
||||
|
||||
|
||||
def main():
|
||||
decort_rg().run()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
Reference in New Issue
Block a user