diff options
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 }}", }, ], }, }, |