-
Notifications
You must be signed in to change notification settings - Fork 233
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
Refactor(eos_designs): Improve structured_config object duplication checks with opt-in #4897
Refactor(eos_designs): Improve structured_config object duplication checks with opt-in #4897
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-4897
# Activate the virtual environment
source test-avd-pr-4897/bin/activate
# Install all requirements including PyAVD
pip install "pyavd[ansible] @ git+https://github.com/ClausHolbechArista/avd.git@refactor/eos_designs/structured_config_rendering#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/structured_config_rendering --force
# Optional: Install AVD examples
cd test-avd-pr-4897
ansible-playbook arista.avd.install_examples |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested with some different conflict combos between servers, uplinks and core_interfaces. The new knob works as expected. LGTM!
python-avd/pyavd/_eos_designs/schema/schema_fragments/defs_adapter_config.schema.yml
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/structured_config/structured_config_generator.py
Outdated
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/structured_config/structured_config_generator.py
Outdated
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/structured_config/connected_endpoints/ethernet_interfaces.py
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/structured_config/connected_endpoints/ethernet_interfaces.py
Outdated
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/structured_config/connected_endpoints/port_channel_interfaces.py
Outdated
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/structured_config/connected_endpoints/ethernet_interfaces.py
Outdated
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/structured_config/connected_endpoints/port_channel_interfaces.py
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Address review comments
Change Summary
Improve structured_config object duplication checks with opt-in
Component(s) name
arista.avd.eos_designs
Proposed changes
avd_eos_designs_enforce_duplication_checks_across_all_models: true
ethernet_interfaces
andport_channel_interfaces
to use the new classes.How to test
Checklist
User Checklist
Repository Checklist