diff options
author | Gaige B Paulsen <gaige@cluetrust.com> | 2025-01-04 04:00:11 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-04 04:00:11 -0500 |
commit | c14a524d7134b54e315d72b5b449351fd04ae813 (patch) | |
tree | aa6ee3985b97f0665e5baf8c8f9cc254fe2a3e59 /plugins/module_utils | |
parent | 9e159990f949652ec1b22f9a9a6e72828bdd1e80 (diff) | |
download | vyos.vyos-c14a524d7134b54e315d72b5b449351fd04ae813.tar.gz vyos.vyos-c14a524d7134b54e315d72b5b449351fd04ae813.zip |
T6987: update vyos_logging_global for 1.4+ (#370)
* T68987: update for 1.4+
* chore: remove redundant vars
* tests: fix vyos_facts integration tests
* tests: fix integration tests for vyos_config
* fix: restore documentation samples
* chore: update readme
Diffstat (limited to 'plugins/module_utils')
3 files changed, 62 insertions, 4 deletions
diff --git a/plugins/module_utils/network/vyos/argspec/logging_global/logging_global.py b/plugins/module_utils/network/vyos/argspec/logging_global/logging_global.py index 0be49e51..734d190e 100644 --- a/plugins/module_utils/network/vyos/argspec/logging_global/logging_global.py +++ b/plugins/module_utils/network/vyos/argspec/logging_global/logging_global.py @@ -175,6 +175,8 @@ class Logging_globalArgs(object): # pylint: disable=R0903 "file_num": {"type": "int"}, "size": {"type": "int"}, }, + "removed_in_version": "7.0.0", + "removed_from_collection": "vyos.vyos", }, "facilities": { "type": "list", @@ -282,10 +284,16 @@ class Logging_globalArgs(object): # pylint: disable=R0903 "protocol": { "type": "str", "choices": ["udp", "tcp"], + "removed_in_version": "7.0.0", + "removed_from_collection": "vyos.vyos", }, }, }, "hostname": {"type": "str"}, + "protocol": { + "type": "str", + "choices": ["udp", "tcp"], + }, }, }, "syslog": { diff --git a/plugins/module_utils/network/vyos/config/logging_global/logging_global.py b/plugins/module_utils/network/vyos/config/logging_global/logging_global.py index d8bfa182..f94c9195 100644 --- a/plugins/module_utils/network/vyos/config/logging_global/logging_global.py +++ b/plugins/module_utils/network/vyos/config/logging_global/logging_global.py @@ -59,6 +59,8 @@ class Logging_global(ResourceModule): "files.archive.file_num", "files", "hosts.port", + "hosts.facility.protocol", # 1.3 and below + "hosts.protocol", "hosts", "users", ] diff --git a/plugins/module_utils/network/vyos/rm_templates/logging_global.py b/plugins/module_utils/network/vyos/rm_templates/logging_global.py index 6c692cfd..516e270b 100644 --- a/plugins/module_utils/network/vyos/rm_templates/logging_global.py +++ b/plugins/module_utils/network/vyos/rm_templates/logging_global.py @@ -28,7 +28,7 @@ def tmplt_params(config_data): tmplt += " facility {facility}".format(facility=val["facility"]) if val.get("severity"): tmplt += " level {level}".format(level=val["severity"]) - if val.get("protocol"): + elif val.get("protocol"): tmplt += " protocol {protocol}".format(protocol=val["protocol"]) return tmplt @@ -50,7 +50,12 @@ def tmplt_params(config_data): tmplt = templt_common(val.get("facilities"), tmplt) elif config_data.get("hosts"): val = config_data.get("hosts") - if val.get("hostname") and not val.get("archive") and not val.get("port"): + if ( + val.get("hostname") + and not val.get("archive") + and not val.get("port") + and not val.get("protocol") + ): tmplt += "system syslog host {hostname}".format(hostname=val["hostname"]) if val.get("facilities"): tmplt = templt_common(val.get("facilities"), tmplt) @@ -352,6 +357,51 @@ class Logging_globalTemplate(NetworkTemplate): }, }, { + "name": "hosts.protocol", + "getval": re.compile( + r""" + ^set\ssystem\ssyslog\shost + (\s(?P<hostname>\S+)) + (\sprotocol\s(?P<protocol>'(udp|tcp)')) + $""", re.VERBOSE, + ), + "setval": "system syslog host {{ hosts.hostname }} protocol {{ hosts.protocol }}", + "result": { + "hosts": { + "{{ hostname }}": { + "hostname": "{{ hostname }}", + "protocol": "{{ protocol }}", + }, + }, + }, + }, + { + # Version 1.3 and below + "name": "hosts.facility.protocol", + "getval": re.compile( + r""" + ^set\ssystem\ssyslog\shost + (\s(?P<hostname>\S+)) + (\sfacility\s(?P<facility>all|auth|authpriv|cron|daemon|kern|lpr|mail|mark|news|protocols|security|syslog|user|uucp|local[0-7])) + (\sprotocol\s(?P<protocol>'(udp|tcp)')) + $""", re.VERBOSE, + ), + "setval": "system syslog host {{ hosts.hostname }} facility {{ hosts.facility }} protocol {{ hosts.protocol }}", + "remval": "system syslog host {{ hosts.hostname }} facility {{ hosts.facility }} protocol {{ hosts.protocol }}", + "result": { + "hosts": { + "{{ hostname }}": { + "hostname": "{{ hostname }}", + "facilities": [ + { + "facility": "{{ facility }}", + "protocol": "{{ protocol }}", + }, ], + }, + }, + }, + }, + { "name": "hosts", "getval": re.compile( r""" @@ -359,7 +409,6 @@ class Logging_globalTemplate(NetworkTemplate): (\s(?P<hostname>\S+)) (\sfacility\s(?P<facility>all|auth|authpriv|cron|daemon|kern|lpr|mail|mark|news|protocols|security|syslog|user|uucp|local[0-7])) (\slevel\s(?P<level>'(emerg|alert|crit|err|warning|notice|info|debug|all)'))? - (\sprotocol\s(?P<protocol>'(udp|tcp)'))? $""", re.VERBOSE, ), "setval": tmplt_params, @@ -372,7 +421,6 @@ class Logging_globalTemplate(NetworkTemplate): { "facility": "{{ facility }}", "severity": "{{ level }}", - "protocol": "{{ protocol }}", }, ], }, }, |