-
Notifications
You must be signed in to change notification settings - Fork 232
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feat(eos_designs)!: Improve logic for BGP configuration of network services VRFs #4358
Conversation
Review docs on Read the Docs To test this pull request: # Create virtual environment for this testing below the current directory
python -m venv test-avd-pr-4358
# Activate the virtual environment
source test-avd-pr-4358/bin/activate
# Install all requirements including PyAVD
pip install "pyavd[ansible] @ git+https://github.com/ClausHolbechArista/avd.git@refactor/eos_designs/flip-default-of-new_network_services_bgp_vrf_config#subdirectory=python-avd" --force
# Point Ansible collections path to the Python virtual environment
export ANSIBLE_COLLECTIONS_PATH=$VIRTUAL_ENV/ansible_collections
# Install Ansible collection
ansible-galaxy collection install git+https://github.com/ClausHolbechArista/avd.git#/ansible_collections/arista/avd/,refactor/eos_designs/flip-default-of-new_network_services_bgp_vrf_config --force
# Optional: Install AVD examples
cd test-avd-pr-4358
ansible-playbook arista.avd.install_examples |
7ba3c33
to
5e18583
Compare
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
LGTM. Tested by setting 'bgp:false' on vrf NOT_WAN_VRF in ansible_collections/arista/avd/molecule/eos_designs_unit_tests/inventory/group_vars/CV_PATHFINDER_TESTS.yml. |
d967492
to
0c26f39
Compare
Conflicts have been resolved. A maintainer will review the pull request shortly. |
20fe937
to
82ec573
Compare
Moving to draft while fixing mlag |
things have changed
python-avd/pyavd/_eos_designs/schema/schema_fragments/defs_network_services.schema.yml
Outdated
Show resolved
Hide resolved
It was confirmed by the submitter who tested this PR :) |
…work_services.schema.yml
f80a880
to
144cea0
Compare
Conflicts have been resolved. A maintainer will review the pull request shortly. |
for more information, see https://pre-commit.ci
…twork_services_bgp_vrf_config
…twork_services_bgp_vrf_config
Quality Gate passedIssues Measures |
Change Summary
Feat(eos_designs)!: Improve logic for BGP configuration of network services VRFs
Related issue(s)
Fixes #3052
Component(s) name
arista.avd.eos_designs
Proposed changes
New improve logic for BGP configuration of network services VRFs
AVD versions below 5.0.0 did not generate BGP configuration for VRFs unless the node type included
evpn
ormpls
underdefault_address_families
and theVRF had the same
evpn
ormpls
defined underaddress_families
(default is['evpn']
).AVD version 4.6.0 introduced the toggle
new_network_services_bgp_vrf_config: <bool; default=false>
to change this behavior by no longer requiringevpn
in the address-families, but instead it always configured BGP for all VRFs. This toggle has been removed in AVD 5.0.0 since this is now part of the default
behavior.
With AVD version 5.0.0, the logic of whether to configure BGP for a network services VRF has been improved with the following rules:
bgp.enabled
setting, to either always or never configure BGP for the VRF.evpn
ormpls
), BGP will be configured for the VRF.p2p-vrfs
and the VRF is included in the uplink VRFs, BGP will be configured for the VRF.It is possible to forcefully add or remove BGP configuration per VRF by setting:
How to test
Adjusted the exisisting tests to produce same outputs by exercising the new
bgp.enabled
knobChecklist
User Checklist
Repository Checklist