-
Notifications
You must be signed in to change notification settings - Fork 236
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): Add support for RSS interface profile for select p… #5009
base: devel
Are you sure you want to change the base?
Feat(eos_designs): Add support for RSS interface profile for select p… #5009
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-5009
# Activate the virtual environment
source test-avd-pr-5009/bin/activate
# Install all requirements including PyAVD
pip install "pyavd[ansible] @ git+https://github.com/ashenoy-arista/avd.git@eosDesignsRssProfileSupport#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/,eosDesignsRssProfileSupport --force
# Optional: Install AVD examples
cd test-avd-pr-5009
ansible-playbook arista.avd.install_examples |
ac5db61
to
44d2491
Compare
python-avd/pyavd/_eos_designs/schema/schema_fragments/platform_settings.schema.yml
Outdated
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/schema/schema_fragments/platform_settings.schema.yml
Outdated
Show resolved
Hide resolved
...on-avd/pyavd/_eos_designs/schema/schema_fragments/defs_node_type_l3_port_channels.schema.yml
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/schema/schema_fragments/defs_node_type_l3_interfaces.schema.yml
Show resolved
Hide resolved
...on-avd/pyavd/_eos_designs/schema/schema_fragments/defs_node_type_l3_port_channels.schema.yml
Outdated
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/schema/schema_fragments/platform_settings.schema.yml
Outdated
Show resolved
Hide resolved
python-avd/pyavd/_eos_designs/schema/schema_fragments/platform_settings.schema.yml
Outdated
Show resolved
Hide resolved
ab65f89
to
02fd8de
Compare
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
d097795
to
0c7fb4c
Compare
Conflicts have been resolved. A maintainer will review the pull request shortly. |
0c7fb4c
to
fa284e3
Compare
Initial logic implementation in eos_designs to validate input yml and generate structured config for RSS profiles. |
fa284e3
to
b3d54d9
Compare
…latforms for more information, see https://pre-commit.ci
b3d54d9
to
4edf20b
Compare
|
Change Summary
Build schema for eos_designs role to help generate structured config for RSS interface profile.
RSS interface profile is only applicable to certain SFE (Software Forwarding Engine) hardware platforms.
We would like to have toggle/knob under
platform_settings
->feature_support
schema that end-user can enable for supported hardware platforms to allow generation of relevant structured config.Related Issue(s)
Fixes #4983
Component(s) name
arista.avd.eos_designs
Proposed changes
Propose adding
rx_queue
dictionary type under L3 interface and member eth interfaces of L3 Port-Channel interface.The keys within this dictionary would be
count
,worker
andmode
.Add a knob under
platform_settings
->feature_support
schema. When enabled, underlying logic would generate structured config for RSS profile for devices capable of supporting this feature. Such profile would include sections for each interface for whichrx_queue
dictionary type has been specified/populated in yml.There will be only one such RSS profile generated and same profile would be set as the chosen profile to apply for the system.
How to test
TBD
Checklist
User Checklist
Repository Checklist