mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Use state: present|absent rather than command: create|delete
This commit is contained in:
parent
beceeb440d
commit
af8c363932
1 changed files with 8 additions and 7 deletions
|
@ -11,11 +11,12 @@ options:
|
||||||
description:
|
description:
|
||||||
- The DNS zone record (eg: foo.com.)
|
- The DNS zone record (eg: foo.com.)
|
||||||
required: true
|
required: true
|
||||||
command:
|
state:
|
||||||
description:
|
description:
|
||||||
- whether or not the zone should exist or not
|
- whether or not the zone should exist or not
|
||||||
required: false
|
required: false
|
||||||
default: true
|
default: true
|
||||||
|
choices: [ "present", "absent" ]
|
||||||
vpc_id:
|
vpc_id:
|
||||||
description:
|
description:
|
||||||
- The VPC ID the zone should be a part of (if this is going to be a private zone)
|
- The VPC ID the zone should be a part of (if this is going to be a private zone)
|
||||||
|
@ -52,7 +53,7 @@ def main():
|
||||||
module = AnsibleModule(
|
module = AnsibleModule(
|
||||||
argument_spec=dict(
|
argument_spec=dict(
|
||||||
zone=dict(required=True),
|
zone=dict(required=True),
|
||||||
command=dict(default='create', choices=['create', 'delete']),
|
state=dict(default='present', choices=['present', 'absent']),
|
||||||
vpc_id=dict(default=None),
|
vpc_id=dict(default=None),
|
||||||
vpc_region=dict(default=None),
|
vpc_region=dict(default=None),
|
||||||
comment=dict(default=''),
|
comment=dict(default=''),
|
||||||
|
@ -63,7 +64,7 @@ def main():
|
||||||
module.fail_json(msg='boto required for this module')
|
module.fail_json(msg='boto required for this module')
|
||||||
|
|
||||||
zone_in = module.params.get('zone').lower()
|
zone_in = module.params.get('zone').lower()
|
||||||
command = module.params.get('command').lower()
|
state = module.params.get('state').lower()
|
||||||
vpc_id = module.params.get('vpc_id')
|
vpc_id = module.params.get('vpc_id')
|
||||||
vpc_region = module.params.get('vpc_region')
|
vpc_region = module.params.get('vpc_region')
|
||||||
comment = module.params.get('comment')
|
comment = module.params.get('comment')
|
||||||
|
@ -102,7 +103,7 @@ def main():
|
||||||
'comment': comment,
|
'comment': comment,
|
||||||
}
|
}
|
||||||
|
|
||||||
if command == 'create' and zone_in in zones:
|
if state == 'present' and zone_in in zones:
|
||||||
if private_zone:
|
if private_zone:
|
||||||
details = conn.get_hosted_zone(zones[zone_in])
|
details = conn.get_hosted_zone(zones[zone_in])
|
||||||
|
|
||||||
|
@ -128,7 +129,7 @@ def main():
|
||||||
record['name'] = zone_in
|
record['name'] = zone_in
|
||||||
module.exit_json(changed=False, set=record)
|
module.exit_json(changed=False, set=record)
|
||||||
|
|
||||||
elif command == 'create':
|
elif state == 'present':
|
||||||
result = conn.create_hosted_zone(zone_in, **record)
|
result = conn.create_hosted_zone(zone_in, **record)
|
||||||
hosted_zone = result['CreateHostedZoneResponse']['HostedZone']
|
hosted_zone = result['CreateHostedZoneResponse']['HostedZone']
|
||||||
zone_id = hosted_zone['Id'].replace('/hostedzone/', '')
|
zone_id = hosted_zone['Id'].replace('/hostedzone/', '')
|
||||||
|
@ -136,11 +137,11 @@ def main():
|
||||||
record['name'] = zone_in
|
record['name'] = zone_in
|
||||||
module.exit_json(changed=True, set=record)
|
module.exit_json(changed=True, set=record)
|
||||||
|
|
||||||
elif command == 'delete' and zone_in in zones:
|
elif state == 'absent' and zone_in in zones:
|
||||||
conn.delete_hosted_zone(zones[zone_in])
|
conn.delete_hosted_zone(zones[zone_in])
|
||||||
module.exit_json(changed=True)
|
module.exit_json(changed=True)
|
||||||
|
|
||||||
elif command == 'delete':
|
elif state == 'absent':
|
||||||
module.exit_json(changed=False)
|
module.exit_json(changed=False)
|
||||||
|
|
||||||
from ansible.module_utils.basic import *
|
from ansible.module_utils.basic import *
|
||||||
|
|
Loading…
Reference in a new issue