refactor: use Display class instead of module.log() per Ansible spec

- Import Display class from ansible.utils.display
- Initialize display instance in DNSZoneManager
- Replace all module.log() calls with display.vvv() and display.vvvv()
- Use display.vvv() for important actions (-v verbosity)
- Use display.vvvv() for skipped records (-vv verbosity)
- Follows Ansible Developer Guide standards for verbosity-based output
- Aligns with ansible-creator agents.md specification
This commit is contained in:
Daniel Akulenok
2026-01-29 20:53:09 +01:00
parent 23fd133bc0
commit b1f2d9f3a1

View File

@@ -309,6 +309,7 @@ import re
from binascii import Error as binascii_error from binascii import Error as binascii_error
from ansible.module_utils.basic import AnsibleModule from ansible.module_utils.basic import AnsibleModule
from ansible.utils.display import Display
from ansible_collections.valid.nsupdate_zone.plugins.module_utils import deps from ansible_collections.valid.nsupdate_zone.plugins.module_utils import deps
@@ -329,6 +330,7 @@ with deps.declare("dnspython", url="https://github.com/rthalley/dnspython"):
class DNSZoneManager: class DNSZoneManager:
def __init__(self, module, zone_config): def __init__(self, module, zone_config):
self.module = module self.module = module
self.display = Display()
self.zone_name_str = zone_config['name'] self.zone_name_str = zone_config['name']
self.records = zone_config['records'] self.records = zone_config['records']
@@ -642,7 +644,7 @@ class DNSZoneManager:
'values': desired['values'] 'values': desired['values']
}) })
if self.module._verbosity >= 1: if self.module._verbosity >= 1:
self.module.log(f"[{self.zone_name_str}] Removed: {name_str} {record_type}") self.display.vvv(f"[{self.zone_name_str}] Removed: {name_str} {record_type}")
else: else:
# State is 'present' # State is 'present'
if key not in current_records: if key not in current_records:
@@ -650,7 +652,7 @@ class DNSZoneManager:
changes['adds'].append(desired) changes['adds'].append(desired)
if self.module._verbosity >= 1: if self.module._verbosity >= 1:
values_str = ', '.join(str(v) for v in desired['values']) values_str = ', '.join(str(v) for v in desired['values'])
self.module.log(f"[{self.zone_name_str}] Added: {name_str} {record_type} {values_str}") self.display.vvv(f"[{self.zone_name_str}] Added: {name_str} {record_type} {values_str}")
else: else:
# Record exists - check if values differ # Record exists - check if values differ
current = current_records[key] current = current_records[key]
@@ -659,11 +661,11 @@ class DNSZoneManager:
if self.module._verbosity >= 1: if self.module._verbosity >= 1:
before_values = ', '.join(str(v) for v in current['values']) before_values = ', '.join(str(v) for v in current['values'])
after_values = ', '.join(str(v) for v in desired['values']) after_values = ', '.join(str(v) for v in desired['values'])
self.module.log(f"[{self.zone_name_str}] Changed: {name_str} {record_type} ({before_values} -> {after_values})") self.display.vvv(f"[{self.zone_name_str}] Changed: {name_str} {record_type} ({before_values} -> {after_values})")
else: else:
# Record unchanged # Record unchanged
if self.module._verbosity >= 2: if self.module._verbosity >= 2:
self.module.log(f"[{self.zone_name_str}] Skipped: {name_str} {record_type} (unchanged)") self.display.vvvv(f"[{self.zone_name_str}] Skipped: {name_str} {record_type} (unchanged)")
# Find deletes (records in current but not in desired, unless ignored) # Find deletes (records in current but not in desired, unless ignored)
for key, current in current_records.items(): for key, current in current_records.items():
@@ -678,7 +680,7 @@ class DNSZoneManager:
'values': current['values'] 'values': current['values']
}) })
if self.module._verbosity >= 1: if self.module._verbosity >= 1:
self.module.log(f"[{self.zone_name_str}] Removed: {name_str} {record_type}") self.display.vvv(f"[{self.zone_name_str}] Removed: {name_str} {record_type}")
return changes return changes