facts: only look up prefixes and VLANs once
Also drop "access-*" hosts from setup playbook as they have all been renamed to "sw-*".
This commit is contained in:
parent
4ca177ff04
commit
48eee50203
2 changed files with 19 additions and 16 deletions
|
@ -1,17 +1,20 @@
|
|||
# Make expensive lookups to NetBox once for later reference by any host.
|
||||
- name: Lookup networks and prefixes
|
||||
set_fact:
|
||||
vlans: '{{ query("netbox.netbox.nb_lookup", "vlans", api_filter="group=new-net", raw_data=true)
|
||||
| sort(attribute="vid") }}'
|
||||
vrfs: '{{ query("netbox.netbox.nb_lookup", "vrfs", raw_data=true) | list2dict("name") }}'
|
||||
prefixes: '{{ query("netbox.netbox.nb_lookup", "prefixes", raw_data=true)
|
||||
| sort(attribute="prefix") | sort(attribute="family.value") }}'
|
||||
- delegate_to: localhost
|
||||
block:
|
||||
- name: Lookup networks and prefixes
|
||||
run_once: true
|
||||
set_fact:
|
||||
vlans: '{{ query("netbox.netbox.nb_lookup", "vlans", api_filter="group=new-net", raw_data=true)
|
||||
| sort(attribute="vid") }}'
|
||||
vrfs: '{{ query("netbox.netbox.nb_lookup", "vrfs", raw_data=true) | list2dict("name") }}'
|
||||
prefixes: '{{ query("netbox.netbox.nb_lookup", "prefixes", raw_data=true)
|
||||
| sort(attribute="prefix") | sort(attribute="family.value") }}'
|
||||
|
||||
- name: Select VLAN and BGP prefixes
|
||||
set_fact:
|
||||
vrf_prefixes: '{{ prefixes | selectattr("vrf")
|
||||
| selectattr("vlan") | selectattr("vlan.id", "in", vlans|map(attribute="id"))
|
||||
| sort(attribute="vlan.vid") }}'
|
||||
bgp_prefixes: '{{ prefixes | selectattr("tenant")
|
||||
| selectattr("role") | selectattr("role.slug", "==", "bgp")
|
||||
| sort(attribute="tenant.slug") }}'
|
||||
- name: Select VLAN and BGP prefixes
|
||||
set_fact:
|
||||
vrf_prefixes: '{{ prefixes | selectattr("vrf")
|
||||
| selectattr("vlan") | selectattr("vlan.id", "in", vlans|map(attribute="id"))
|
||||
| sort(attribute="vlan.vid") }}'
|
||||
bgp_prefixes: '{{ prefixes | selectattr("tenant")
|
||||
| selectattr("role") | selectattr("role.slug", "==", "bgp")
|
||||
| sort(attribute="tenant.slug") }}'
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
- exit
|
||||
|
||||
# Set up access switches.
|
||||
- hosts: access-*, sw-*
|
||||
- hosts: sw-*
|
||||
gather_facts: false
|
||||
roles:
|
||||
- access
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue