aristanetworks / avd

Arista Validated Designs
https://avd.arista.com
Apache License 2.0
298 stars 219 forks source link

Feat(eos_designs): Add revised schema to support L3 Port-Channel interfaces #4752

Open ashenoy-arista opened 1 day ago

ashenoy-arista commented 1 day ago

Change Summary

Revised schema to support L3 Port-Channel interfaces Primary use-case is to allow such interfaces as wan-facing interfaces.

Related Issue(s)

Fixes #4695

Component(s) name

arista.avd.eos_designs

Proposed changes

How to test

This change captures the first step towards having a schema within eos_designs to represent L3 port-channel interface. The underlying logic to support the newly added schema and tests would be worked upon next.

Checklist

User Checklist

Repository Checklist

github-actions[bot] commented 1 day ago

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-4752
# Activate the virtual environment
source test-avd-pr-4752/bin/activate
# Install all requirements including PyAVD
pip install "pyavd[ansible] @ git+https://github.com/ashenoy-arista/avd.git@samplePRBranch#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/ashenoy-arista/avd.git#/ansible_collections/arista/avd/,samplePRBranch --force
# Optional: Install AVD examples
cd test-avd-pr-4752
ansible-playbook arista.avd.install_examples