diff --git a/galaxy.yml b/galaxy.yml index 454f3a1..1e6a9af 100644 --- a/galaxy.yml +++ b/galaxy.yml @@ -1,7 +1,7 @@ --- namespace: happydns name: happydomain -version: 0.4.0 +version: 0.3.3 readme: README.md authors: - happyDomain Team diff --git a/plugins/modules/service.py b/plugins/modules/service.py index a33e410..2cc1e29 100644 --- a/plugins/modules/service.py +++ b/plugins/modules/service.py @@ -54,10 +54,9 @@ def main(): for d in domains: if d.domain == p['domain'] or d.domain == p['domain'] + ".": for z in d.zone_history: - if p['zone'] is None or z == p['zone']: - zone = d.get_zone(z.id) + if z == p['zone']: + zone = d.get_zone(z) - skipAdd = False if p['subdomain'].removesuffix(d.domain) in zone.services: for s in zone.services[p['subdomain'].removesuffix(d.domain)]: if s._svctype == p['type']: @@ -68,20 +67,19 @@ def main(): differ = True break - if p['state'] == 'absent' and not differ: - s.delete() - result['changed'] = True - elif p['erase_others']: + if p['erase_others']: if differ: s.delete() result['changed'] = True - else: - skipAdd = True elif not differ: - module.exit_json(**result) - return + if p['state'] == 'absent': + s.delete() + result['changed'] = True + else: + module.exit_json(**result) + return - if not skipAdd and p['state'] != 'absent': + if p['state'] != 'absent': zone.add_zone_service( p['subdomain'].removesuffix(d.domain), p['type'], @@ -90,9 +88,10 @@ def main(): result['changed'] = True - if p['apply_changes'] and result['changed']: + if p['apply_changes']: zone.apply_changes() result['published'] = True + result['changed'] = True break else: