eos_designs_facts¶
Note
Always use the FQCN (Fully Qualified Collection Name) arista.avd.eos_designs_facts
when using this plugin.
Set eos_designs facts
Synopsis¶
The `arista.avd.eos_designs_facts` module is an Ansible Action Plugin providing the following capabilities:
- Set `avd_switch_facts` fact containing both `switch` facts per host. - Set `avd_topology_peers` fact containing list of downlink switches per host. This list is built based on the `uplink_switches` from all other hosts. - Set `avd_overlay_peers` fact containing list of EVPN or MPLS overlay peers per host. This list is built based on the `evpn_route_servers` and `mpls_route_reflectors` from all other hosts.
The plugin is designed to `run_once`. With this, Ansible will set the same facts on all devices, so all devices can lookup values of any other device without using the slower `hostvars`.
The facts can also be copied to the "root" `switch` in a task run per-device see example below
The module is used in `arista.avd.eos_designs` to set facts for devices, which are then used by jinja templates and python module in `arista.avd.eos_designs` to generate the `structured_configuration`.
Parameters¶
Argument | Type | Required | Default | Value Restrictions | Description |
---|---|---|---|---|---|
template_output | bool | False | None | If true, the output data will be run through another jinja2 rendering before returning. This is to resolve any input values with inline jinja using variables/facts set by the input templates. | |
conversion_mode | str | False | debug | Valid values: - error - warning - info - debug - quiet - disabled |
Run data conversion in either "error", "warning", "info", "debug", "quiet" or "disabled" mode. Conversion will perform type conversion of input variables as defined in the schema. Conversion is intended to help the user to identify minor issues with the input data, while still allowing the data to be validated. During conversion, messages will be generated with information about the hosts and keys which required conversion. conversion_mode:disabled means that conversion will not run. conversion_mode:error will produce error messages and fail the task. conversion_mode:warning will produce warning messages. conversion_mode:info will produce regular log messages. conversion_mode:debug will produce hidden messages viewable with -v. conversion_mode:quiet will not produce any messages. |
validation_mode | str | False | warning | Valid values: - error - warning - info - debug - disabled |
Run validation in either "error", "warning", "info", "debug" or "disabled" mode. Validation will validate the input variables according to the schema. During validation, messages will be generated with information about the hosts and keys which failed validation. validation_mode:disabled means that validation will not run. validation_mode:error will produce error messages and fail the task. validation_mode:warning will produce warning messages. validation_mode:info will produce regular log messages. validation_mode:debug will produce hidden messages viewable with -v. |
cprofile_file | str | False | None | Filename for storing cprofile data used to debug performance issues. Running cprofile will slow down performance in it self, so only set this while troubleshooting. |
Examples¶
---
- name: Set eos_designs facts
tags: [build, provision, facts]
arista.avd.eos_designs_facts:
schema_id: eos_designs
check_mode: False
run_once: True
- name: Set eos_designs facts per device
tags: [build, provision, facts]
ansible.builtin.set_fact:
switch: "{{ avd_switch_facts[inventory_hostname].switch }}"
delegate_to: localhost
changed_when: false
Authors¶
- Arista Ansible Team (@aristanetworks)