summaryrefslogtreecommitdiff
path: root/plugins/modules/vyos_facts.py.preview
diff options
context:
space:
mode:
authoromnom62 <omnom62@outlook.com>2026-06-01 05:42:31 +1000
committeromnom62 <omnom62@outlook.com>2026-06-01 05:42:31 +1000
commit967a8c581df46f3c01d642ed08ec0d7ec43d79f6 (patch)
treedccfe21768a6629ac85de2fb70136cd1baf9be3f /plugins/modules/vyos_facts.py.preview
parent6a161ed8f263e152ebfd227e669a51773de5a028 (diff)
downloadrest.vyos-967a8c581df46f3c01d642ed08ec0d7ec43d79f6.tar.gz
rest.vyos-967a8c581df46f3c01d642ed08ec0d7ec43d79f6.zip
removing previews
Diffstat (limited to 'plugins/modules/vyos_facts.py.preview')
-rw-r--r--plugins/modules/vyos_facts.py.preview161
1 files changed, 0 insertions, 161 deletions
diff --git a/plugins/modules/vyos_facts.py.preview b/plugins/modules/vyos_facts.py.preview
deleted file mode 100644
index 66e684b..0000000
--- a/plugins/modules/vyos_facts.py.preview
+++ /dev/null
@@ -1,161 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-# GNU General Public License v3.0+
-
-from __future__ import absolute_import, division, print_function
-
-
-__metaclass__ = type
-
-DOCUMENTATION = r"""
----
-module: vyos_facts
-short_description: Get facts about VyOS devices via REST API.
-description:
- - Collects facts from VyOS devices using the HTTPS REST API.
- - Returns system info and optionally per-resource configuration facts.
-version_added: "1.0.0"
-author:
- - VyOS Community (@vyos)
-options:
- gather_subset:
- description:
- - Restrict facts to a subset. Use C(all), C(default), C(config), or C(min).
- type: list
- elements: str
- default: ["min"]
- gather_network_resources:
- description:
- - Which network resource facts to gather.
- type: list
- elements: str
- available_network_resources:
- description:
- - When true, return a list of available resource names.
- type: bool
- default: false
- hostname:
- description:
- - Device IP or FQDN.
- type: str
- required: true
- port:
- type: int
- default: 443
- api_key:
- type: str
- required: true
- no_log: true
- timeout:
- type: int
- default: 30
- verify_ssl:
- type: bool
- default: false
-"""
-
-RETURN = r"""
-ansible_facts:
- description: Dictionary of facts keyed by resource name.
- returned: always
- type: dict
-"""
-
-from ansible.module_utils.basic import AnsibleModule
-from ansible_collections.vyos.rest.plugins.module_utils.vyos_rest import (
- VYOS_REST_CONNECTION_ARGSPEC,
- VyOSRestClient,
- VyOSRestError,
-)
-
-
-_NETWORK_RESOURCES = [
- "interfaces",
- "l3_interfaces",
- "lag_interfaces",
- "lldp_global",
- "lldp_interfaces",
- "static_routes",
- "firewall_rules",
- "firewall_global",
- "firewall_interfaces",
- "ospfv2",
- "ospfv3",
-]
-
-_RESOURCE_PATHS = {
- "interfaces": ["interfaces"],
- "l3_interfaces": ["interfaces"],
- "lag_interfaces": ["interfaces", "bonding"],
- "lldp_global": ["service", "lldp"],
- "lldp_interfaces": ["service", "lldp"],
- "static_routes": ["protocols", "static"],
- "firewall_rules": ["firewall"],
- "firewall_global": ["firewall"],
- "firewall_interfaces": ["firewall"],
- "ospfv2": ["protocols", "ospf"],
- "ospfv3": ["protocols", "ospfv3"],
-}
-
-
-def _get_subset(client, resource):
- path = _RESOURCE_PATHS.get(resource, [])
- try:
- result = client.retrieve_show_config(path)
- return result.get("data") or {}
- except VyOSRestError:
- return {}
-
-
-def main():
- argument_spec = dict(
- gather_subset=dict(type="list", elements="str", default=["min"]),
- gather_network_resources=dict(type="list", elements="str"),
- available_network_resources=dict(type="bool", default=False),
- )
- argument_spec.update(VYOS_REST_CONNECTION_ARGSPEC)
- module = AnsibleModule(argument_spec=argument_spec, supports_check_mode=True)
-
- client = VyOSRestClient(module)
- facts = {}
-
- if module.params["available_network_resources"]:
- facts["available_network_resources"] = _NETWORK_RESOURCES
-
- gather_subset = module.params["gather_subset"]
- get_all = "all" in gather_subset
-
- # Always gather system info for "min" or "all"
- if get_all or "min" in gather_subset or "default" in gather_subset:
- try:
- info = client.info()
- facts["version"] = info.get("data", {}).get("version", "")
- facts["hostname"] = info.get("data", {}).get("hostname", "")
- except VyOSRestError:
- pass
-
- # Config subset
- if get_all or "config" in gather_subset:
- try:
- result = client.retrieve_show_config([])
- facts["config"] = result.get("data") or {}
- except VyOSRestError:
- facts["config"] = {}
-
- # Network resources
- requested = module.params.get("gather_network_resources") or []
- if "all" in requested:
- requested = _NETWORK_RESOURCES
-
- for resource in requested:
- if resource.startswith("!"):
- continue
- if resource in _NETWORK_RESOURCES:
- facts["network_resources"] = facts.get("network_resources", {})
- facts["network_resources"][resource] = _get_subset(client, resource)
-
- module.exit_json(changed=False, ansible_facts=facts)
-
-
-if __name__ == "__main__":
- main()