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:
@@ -309,6 +309,7 @@ import re
|
||||
from binascii import Error as binascii_error
|
||||
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
from ansible.utils.display import Display
|
||||
|
||||
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:
|
||||
def __init__(self, module, zone_config):
|
||||
self.module = module
|
||||
self.display = Display()
|
||||
self.zone_name_str = zone_config['name']
|
||||
self.records = zone_config['records']
|
||||
|
||||
@@ -642,7 +644,7 @@ class DNSZoneManager:
|
||||
'values': desired['values']
|
||||
})
|
||||
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:
|
||||
# State is 'present'
|
||||
if key not in current_records:
|
||||
@@ -650,7 +652,7 @@ class DNSZoneManager:
|
||||
changes['adds'].append(desired)
|
||||
if self.module._verbosity >= 1:
|
||||
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:
|
||||
# Record exists - check if values differ
|
||||
current = current_records[key]
|
||||
@@ -659,11 +661,11 @@ class DNSZoneManager:
|
||||
if self.module._verbosity >= 1:
|
||||
before_values = ', '.join(str(v) for v in current['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:
|
||||
# Record unchanged
|
||||
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)
|
||||
for key, current in current_records.items():
|
||||
@@ -678,7 +680,7 @@ class DNSZoneManager:
|
||||
'values': current['values']
|
||||
})
|
||||
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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user