Skip to content
Snippets Groups Projects

Use custom ASN if defined in inventory

Merged Aleksandr Kurbatov requested to merge feature/nat-1159-asn-override into develop
1 file
+ 38
10
Compare changes
  • Side-by-side
  • Inline
---
# When custom ASN is defined in partner general.yaml inventory for LHCONE,
# this is used for only _BLOCK community to configure, the GEANT_<NREN>
# community will stay standard with the standard partner's ASN.
#
- name: Set NREN community names
when: not subscription.product.product_type | upper in ['LHCONE']
ansible.builtin.set_fact:
@@ -6,18 +10,42 @@
- name: Set NREN community names
when: subscription.product.product_type | upper in ['LHCONE']
ansible.builtin.set_fact:
nren_community_names: ["GEANT_{{ partner_name | upper }}", "LHCONE_{{ partner_name | upper }}_BLOCK"]
block:
- name: Set standard NREN community names
when: not partner[subscription.product.product_type | upper].asn is defined
ansible.builtin.set_fact:
nren_community_names: ["GEANT_{{ partner_name | upper }}", "LHCONE_{{ partner_name | upper }}_BLOCK"]
- name: Set NREN community values (2-byte ASN)
when: (partner.asn | int) < 65536
ansible.builtin.set_fact:
nren_community_values: ["{{ geant_re_as_number }}:{{ partner.asn }}", "{{ bgp.block_community_prefix }}:{{ partner.asn }}"]
- name: Set custom NREN community names
when: partner[subscription.product.product_type | upper].asn is defined
ansible.builtin.set_fact:
nren_community_names: ["LHCONE_{{ partner_name | upper }}_BLOCK"]
- name: Set NREN community values (4-byte ASN)
when: (partner.asn | int) > 65535
ansible.builtin.set_fact:
nren_community_values: ["origin:{{ partner.asn }}:{{ geant_re_as_number }}", "origin:{{ partner.asn }}:{{ bgp.block_community_prefix }}"]
- name: Set NREN communities values using "partner.asn"
when: not partner[subscription.product.product_type | upper].asn is defined
block:
- name: Set NREN community values (2-byte ASN)
when: (partner.asn | int) < 65536
ansible.builtin.set_fact:
nren_community_values: ["{{ geant_re_as_number }}:{{ partner.asn }}", "{{ bgp.block_community_prefix }}:{{ partner.asn }}"]
- name: Set NREN community values (4-byte ASN)
when: (partner.asn | int) > 65535
ansible.builtin.set_fact:
nren_community_values: ["origin:{{ partner.asn }}:{{ geant_re_as_number }}", "origin:{{ partner.asn }}:{{ bgp.block_community_prefix }}"]
- name: Set NREN communities values using {{partner[subscription.product.product_type | upper]}}.asn
when: partner[subscription.product.product_type | upper].asn is defined
block:
- name: Set NREN community values (2-byte ASN)
when: (partner[subscription.product.product_type | upper].asn | int) < 65536
ansible.builtin.set_fact:
nren_community_values: ["{{ bgp.block_community_prefix }}:{{ partner[subscription.product.product_type | upper].asn }}"]
- name: Set NREN community values (4-byte ASN)
when: (partner[subscription.product.product_type | upper].asn | int) > 65535
ansible.builtin.set_fact:
nren_community_values: ["origin:{{ partner[subscription.product.product_type | upper].asn }}:{{ bgp.block_community_prefix }}"]
- name: Create a list of NREN communities
ansible.builtin.set_fact:
Loading