def main():
    """
    Main entry point for module execution

    :returns: ansible_facts
    """
    argument_spec = FactsArgs.argument_spec
    argument_spec.update(vyos_argument_spec)

    module = AnsibleModule(
        argument_spec=argument_spec, supports_check_mode=True
    )

    warnings = []
    if module.params["gather_subset"] == "!config":
        warnings.append(
            "default value for `gather_subset` will be changed to `min` from `!config` v2.11 onwards"
        )

    result = Facts(module).get_facts()

    ansible_facts, additional_warnings = result
    warnings.extend(additional_warnings)

    module.exit_json(ansible_facts=ansible_facts, warnings=warnings)
Esempio n. 2
0
def main():
    """
    Main entry point for module execution

    :returns: ansible_facts
    """
    argument_spec = FactsArgs.argument_spec
    argument_spec.update(vyos_argument_spec)

    module = AnsibleModule(argument_spec=argument_spec,
                           supports_check_mode=True)

    warnings = []
    if module.params["gather_subset"] == "!config":
        warnings.append(
            "default value for `gather_subset` will be changed to `min` from `!config` v2.11 onwards"
        )

    ansible_facts = {}
    if module.params.get("available_network_resources"):
        ansible_facts["available_network_resources"] = sorted(
            FACT_RESOURCE_SUBSETS.keys())
    result = Facts(module).get_facts()
    additional_facts, additional_warnings = result
    ansible_facts.update(additional_facts)
    warnings.extend(additional_warnings)

    module.exit_json(ansible_facts=ansible_facts, warnings=warnings)
Esempio n. 3
0
 def __init__(self, module):
     super(Bgp_global, self).__init__(
         empty_fact_val={},
         facts_module=Facts(module),
         module=module,
         resource="bgp_global",
         tmplt=Bgp_globalTemplate(),
     )
     self.parsers = []
Esempio n. 4
0
 def __init__(self, module):
     super(Bgp_address_family, self).__init__(
         empty_fact_val={},
         facts_module=Facts(module),
         module=module,
         resource="bgp_address_family",
         tmplt=Bgp_address_familyTemplate(),
     )
     self.parsers = []
Esempio n. 5
0
 def __init__(self, module):
     super(Hostname, self).__init__(
         empty_fact_val={},
         facts_module=Facts(module),
         module=module,
         resource="hostname",
         tmplt=HostnameTemplate(),
     )
     self.parsers = []
Esempio n. 6
0
    def get_ospfv3_facts(self, data=None):
        """Get the 'facts' (the current configuration)

        :rtype: A dictionary
        :returns: The current configuration as a dictionary
        """
        facts, _warnings = Facts(self._module).get_facts(
            self.gather_subset, self.gather_network_resources, data=data)
        ospfv3_facts = facts["ansible_network_resources"].get("ospfv3", {})
        return ospfv3_facts
Esempio n. 7
0
    def get_firewall_interfaces_facts(self, data=None):
        """ Get the 'facts' (the current configuration)

        :rtype: A dictionary
        :returns: The current configuration as a dictionary
        """
        facts, _warnings = Facts(self._module).get_facts(self.gather_subset, self.gather_network_resources, data=data)
        firewall_interfaces_facts = facts['ansible_network_resources'].get('firewall_interfaces')
        if not firewall_interfaces_facts:
            return []
        return firewall_interfaces_facts
Esempio n. 8
0
    def get_interfaces_facts(self):
        """ Get the 'facts' (the current configuration)

        :rtype: A dictionary
        :returns: The current configuration as a dictionary
        """
        facts, _warnings = Facts(self._module).get_facts(
            self.gather_subset, self.gather_network_resources)
        interfaces_facts = facts["ansible_network_resources"].get("interfaces")
        if not interfaces_facts:
            return []
        return interfaces_facts
Esempio n. 9
0
 def __init__(self, module):
     super(Route_maps, self).__init__(
         empty_fact_val=[],
         facts_module=Facts(module),
         module=module,
         resource="route_maps",
         tmplt=Route_mapsTemplate(),
     )
     self.parsers = [
         "call",
         "description",
         "action",
         "continue_sequence",
         "set_aggregator_ip",
         "set_aggregator_as",
         "set_as_path_exclude",
         "set_as_path_prepend",
         "set_atomic_aggregate",
         "set_bgp_extcommunity_rt",
         "set_extcommunity_rt",
         "set_extcommunity_soo",
         "set_ip_next_hop",
         "set_ipv6_next_hop",
         "set_large_community",
         "set_local_preference",
         "set_metric",
         "set_metric_type",
         "set_origin",
         "set_originator_id",
         "set_src",
         "set_tag",
         "set_weight",
         "set_comm_list",
         "set_comm_list_delete",
         "set_community",
         "match_as_path",
         "match_community_community_list",
         "match_community_exact_match",
         "match_extcommunity",
         "match_interface",
         "match_large_community_large_community_list",
         "match_metric",
         "match_origin",
         "match_peer",
         "match_ip_address",
         "match_ip_next_hop",
         "match_ip_route_source",
         "on_match_goto",
         "on_match_next",
         "match_ipv6_address",
         "match_ipv6_nexthop",
         "match_rpki",
     ]
Esempio n. 10
0
    def get_lldp_global_facts(self):
        """ Get the 'facts' (the current configuration)

        :rtype: A dictionary
        :returns: The current configuration as a dictionary
        """
        facts, _warnings = Facts(self._module).get_facts(
            self.gather_subset, self.gather_network_resources)
        lldp_global_facts = facts['ansible_network_resources'].get(
            'lldp_global')
        if not lldp_global_facts:
            return {}
        return lldp_global_facts
Esempio n. 11
0
    def get_lldp_global_facts(self, data=None):
        """Get the 'facts' (the current configuration)

        :rtype: A dictionary
        :returns: The current configuration as a dictionary
        """
        facts, _warnings = Facts(self._module).get_facts(
            self.gather_subset, self.gather_network_resources, data=data)
        lldp_global_facts = facts["ansible_network_resources"].get(
            "lldp_global")
        if not lldp_global_facts:
            return []
        return lldp_global_facts
Esempio n. 12
0
 def __init__(self, module):
     super(Ntp_global, self).__init__(
         empty_fact_val={},
         facts_module=Facts(module),
         module=module,
         resource="ntp_global",
         tmplt=NtpTemplate(),
     )
     self.parsers = [
         "allow_clients",
         "listen_addresses",
         "server",
         "options",
         "allow_clients_delete",
         "listen_addresses_delete",
     ]
Esempio n. 13
0
 def __init__(self, module):
     super(Snmp_server, self).__init__(
         empty_fact_val={},
         facts_module=Facts(module),
         module=module,
         resource="snmp_server",
         tmplt=Snmp_serverTemplate(),
     )
     self.parsers = [
         "contact",
         "description",
         "location",
         "smux_peer",
         "trap_source",
         "trap_target",
     ]
Esempio n. 14
0
 def __init__(self, module):
     super(Prefix_lists, self).__init__(
         empty_fact_val=[],
         facts_module=Facts(module),
         module=module,
         resource="prefix_lists",
         tmplt=Prefix_listsTemplate(),
     )
     self.plist_parsers = [
         "name",
         "description",
     ]
     self.entries_parsers = [
         "sequence",
         "action",
         "rule_description",
         "ge",
         "le",
         "prefix",
     ]
Esempio n. 15
0
 def __init__(self, module):
     super(Logging_global, self).__init__(
         empty_fact_val={},
         facts_module=Facts(module),
         module=module,
         resource="logging_global",
         tmplt=Logging_globalTemplate(),
     )
     self.parsers = [
         "console.facilities",
         "global_params.archive.file_num",
         "global_params.archive.size",
         "global_params.marker_interval",
         "global_params.preserve_fqdn",
         "global_params.facilities",
         "files.archive.size",
         "files.archive.file_num",
         "files",
         "hosts.port",
         "hosts",
         "users",
     ]
 def __init__(self, module):
     super(Ospf_interfaces, self).__init__(
         empty_fact_val={},
         facts_module=Facts(module),
         module=module,
         resource="ospf_interfaces",
         tmplt=Ospf_interfacesTemplate(),
     )
     self.parsers = [
         "authentication_password",
         "authentication_md5",
         "bandwidth",
         "cost",
         "hello_interval",
         "dead_interval",
         "mtu_ignore",
         "network",
         "priority",
         "retransmit_interval",
         "transmit_delay",
         "ifmtu",
         "instance",
         "passive",
     ]
Esempio n. 17
0
def main():
    """
    Main entry point for module execution

    :returns: ansible_facts
    """
    argument_spec = FactsArgs.argument_spec
    argument_spec.update(vyos_argument_spec)

    module = AnsibleModule(argument_spec=argument_spec,
                           supports_check_mode=True)

    warnings = []

    ansible_facts = {}
    if module.params.get("available_network_resources"):
        ansible_facts["available_network_resources"] = sorted(
            FACT_RESOURCE_SUBSETS.keys())
    result = Facts(module).get_facts()
    additional_facts, additional_warnings = result
    ansible_facts.update(additional_facts)
    warnings.extend(additional_warnings)

    module.exit_json(ansible_facts=ansible_facts, warnings=warnings)