summaryrefslogtreecommitdiff
path: root/plugins/modules
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/modules')
-rw-r--r--plugins/modules/vyos_lldp_global.py1
-rw-r--r--plugins/modules/vyos_logging_global.py38
-rw-r--r--plugins/modules/vyos_ntp_global.py16
-rw-r--r--plugins/modules/vyos_route_maps.py2
-rw-r--r--plugins/modules/vyos_snmp_server.py55
5 files changed, 93 insertions, 19 deletions
diff --git a/plugins/modules/vyos_lldp_global.py b/plugins/modules/vyos_lldp_global.py
index cc24be9..9ebbac0 100644
--- a/plugins/modules/vyos_lldp_global.py
+++ b/plugins/modules/vyos_lldp_global.py
@@ -1,5 +1,6 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
+# GNU General Public License v3.0+
from __future__ import absolute_import, division, print_function
diff --git a/plugins/modules/vyos_logging_global.py b/plugins/modules/vyos_logging_global.py
index be240ff..09fdd6b 100644
--- a/plugins/modules/vyos_logging_global.py
+++ b/plugins/modules/vyos_logging_global.py
@@ -1,15 +1,12 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
+# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from __future__ import absolute_import, division, print_function
__metaclass__ = type
-from ansible.module_utils.basic import AnsibleModule
-from ansible_collections.vyos.rest.plugins.module_utils.vyos import VyOSModule
-
-
DOCUMENTATION = r"""
---
module: vyos_logging_global
@@ -33,12 +30,15 @@ options:
type: dict
suboptions:
facilities:
+ description: List of syslog facilities to log to the console.
type: list
elements: dict
suboptions:
facility:
+ description: Syslog facility name (e.g. local7, all, kern).
type: str
severity:
+ description: Minimum severity level to log (e.g. err, debug, all).
type: str
files:
description: Logging to local files.
@@ -46,44 +46,59 @@ options:
elements: dict
suboptions:
path:
+ description: Path to the log file on the device.
type: str
archive:
+ description: Log file archive/rotation settings.
type: dict
suboptions:
file_num:
+ description: Number of archived log files to keep.
type: int
size:
+ description: Maximum size of log file in kilobytes before rotation.
type: int
facilities:
+ description: List of syslog facilities to log to this file.
type: list
elements: dict
suboptions:
facility:
+ description: Syslog facility name.
type: str
severity:
+ description: Minimum severity level to log.
type: str
global_params:
description: Global syslog parameters (maps to C(system syslog global)).
type: dict
suboptions:
archive:
+ description: Global log archive/rotation settings.
type: dict
suboptions:
file_num:
+ description: Number of archived log files to keep.
type: int
size:
+ description: Maximum size of log file in kilobytes before rotation.
type: int
facilities:
+ description: List of syslog facilities for global logging.
type: list
elements: dict
suboptions:
facility:
+ description: Syslog facility name.
type: str
severity:
+ description: Minimum severity level to log.
type: str
marker_interval:
+ description: Interval in seconds between marker log entries.
type: int
preserve_fqdn:
+ description: Use the fully qualified domain name in syslog messages.
type: bool
hosts:
description: Logging to remote syslog hosts.
@@ -91,21 +106,27 @@ options:
elements: dict
suboptions:
hostname:
+ description: IP address or hostname of the remote syslog server.
type: str
port:
+ description: UDP/TCP port on the remote syslog server (default 514).
type: int
protocol:
+ description: Transport protocol (udp or tcp).
type: str
facilities:
+ description: List of syslog facilities to forward to this host.
type: list
elements: dict
suboptions:
facility:
+ description: Syslog facility name.
type: str
severity:
+ description: Minimum severity level to forward.
type: str
protocol:
- description: Per-facility protocol override.
+ description: Per-facility protocol override (udp or tcp).
type: str
users:
description: Logging to local user terminals.
@@ -113,14 +134,18 @@ options:
elements: dict
suboptions:
username:
+ description: Local username whose terminal receives log messages.
type: str
facilities:
+ description: List of syslog facilities to send to this user.
type: list
elements: dict
suboptions:
facility:
+ description: Syslog facility name.
type: str
severity:
+ description: Minimum severity level to send.
type: str
running_config:
@@ -213,6 +238,9 @@ saved:
type: dict
"""
+from ansible.module_utils.basic import AnsibleModule
+from ansible_collections.vyos.rest.plugins.module_utils.vyos import VyOSModule
+
# ------------------------------------------------------------
# Normalization
diff --git a/plugins/modules/vyos_ntp_global.py b/plugins/modules/vyos_ntp_global.py
index 88073e1..dd5fe4e 100644
--- a/plugins/modules/vyos_ntp_global.py
+++ b/plugins/modules/vyos_ntp_global.py
@@ -1,5 +1,6 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
+# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from __future__ import absolute_import, division, print_function
@@ -338,7 +339,20 @@ def main():
elements="dict",
options=dict(
server=dict(type="str", required=True),
- options=dict(type="list", elements="str"),
+ options=dict(
+ type="list",
+ elements="str",
+ choices=[
+ "dynamic",
+ "noselect",
+ "pool",
+ "preempt",
+ "prefer",
+ "nts",
+ "ptp",
+ "interleave",
+ ],
+ ),
),
),
),
diff --git a/plugins/modules/vyos_route_maps.py b/plugins/modules/vyos_route_maps.py
index c72c66a..55b1706 100644
--- a/plugins/modules/vyos_route_maps.py
+++ b/plugins/modules/vyos_route_maps.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
-
+# GNU General Public License v3.0+
from __future__ import absolute_import, division, print_function
diff --git a/plugins/modules/vyos_snmp_server.py b/plugins/modules/vyos_snmp_server.py
index 9bdf451..3b40344 100644
--- a/plugins/modules/vyos_snmp_server.py
+++ b/plugins/modules/vyos_snmp_server.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
-# GNU General Public License v3.0+
+# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from __future__ import absolute_import, division, print_function
@@ -41,7 +41,7 @@ options:
type: list
elements: str
authorization_type:
- description: Authorization type.
+ description: Authorization type (ro=read-only, rw=read-write).
type: str
choices: ['ro', 'rw']
contact:
@@ -65,7 +65,7 @@ options:
elements: dict
suboptions:
address:
- description: IP address.
+ description: IP address to listen on.
type: str
required: true
port:
@@ -76,10 +76,13 @@ options:
type: dict
suboptions:
address:
+ description: IP address of the trap target host.
type: str
community:
+ description: Community name to use for traps.
type: str
port:
+ description: UDP port on the trap target host.
type: int
snmp_v3:
description: SNMPv3 configuration.
@@ -89,104 +92,132 @@ options:
description: EngineID as a hex string.
type: str
groups:
+ description: SNMPv3 group configuration.
type: list
elements: dict
suboptions:
group:
+ description: Group name.
type: str
required: true
mode:
+ description: Access mode (ro=read-only, rw=read-write).
type: str
choices: ['ro', 'rw']
seclevel:
+ description: Minimum security level required for group members.
type: str
choices: ['auth', 'priv']
view:
+ description: View name the group has access to.
type: str
users:
+ description: SNMPv3 user configuration.
type: list
elements: dict
suboptions:
user:
+ description: Username.
type: str
required: true
authentication:
+ description: Authentication parameters for this user.
type: dict
suboptions:
type:
+ description: Authentication algorithm.
type: str
- choices: ['md5', 'sha']
encrypted_key:
- description: Encrypted key (stored as encrypted-password on device).
+ description: Encrypted authentication key (stored as encrypted-password on device).
type: str
plaintext_key:
- description: Plaintext key (device encrypts it; recommended for 1.5+).
+ description: Plaintext authentication key (device encrypts it).
type: str
- no_log: true
privacy:
+ description: Privacy (encryption) parameters for this user.
type: dict
suboptions:
type:
+ description: Privacy algorithm.
type: str
- choices: ['des', 'aes']
encrypted_key:
+ description: Encrypted privacy key.
type: str
plaintext_key:
+ description: Plaintext privacy key (device encrypts it).
type: str
- no_log: true
group:
+ description: Group this user belongs to.
type: str
mode:
+ description: Access mode for this user.
type: str
choices: ['ro', 'rw']
tsm_key:
+ description: TSM fingerprint of the certificate mapped to this user.
type: str
trap_targets:
+ description: SNMPv3 trap target configuration.
type: list
elements: dict
suboptions:
address:
+ description: IP address of the SNMPv3 trap target.
type: str
port:
+ description: UDP port on the trap target host.
type: int
protocol:
+ description: Transport protocol for traps.
type: str
choices: ['tcp', 'udp']
type:
+ description: Trap type.
type: str
choices: ['inform', 'trap']
authentication:
+ description: Authentication parameters for trap target.
type: dict
suboptions:
type:
+ description: Authentication algorithm.
type: str
encrypted_key:
+ description: Encrypted authentication key.
type: str
plaintext_key:
+ description: Plaintext authentication key.
type: str
- no_log: true
privacy:
+ description: Privacy parameters for trap target.
type: dict
suboptions:
type:
+ description: Privacy algorithm.
type: str
encrypted_key:
+ description: Encrypted privacy key.
type: str
plaintext_key:
+ description: Plaintext privacy key.
type: str
- no_log: true
views:
+ description: SNMPv3 view configuration.
type: list
elements: dict
suboptions:
view:
+ description: View name.
type: str
required: true
oid:
+ description: OID subtree included in this view.
type: str
exclude:
+ description: OID subtree excluded from this view.
type: str
mask:
+ description: OID mask for the view.
type: str
state:
description:
@@ -781,7 +812,7 @@ ARGUMENT_SPEC = dict(
privacy=dict(type="dict", options=_auth_privacy_spec()),
group=dict(type="str"),
mode=dict(type="str", choices=["ro", "rw"]),
- tsm_key=dict(type="str"),
+ tsm_key=dict(type="str", no_log=True),
),
),
trap_targets=dict(