Skip to content
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_cli_config_gen): Additional interface TE options #4823

Open
wants to merge 2 commits into
base: devel
Choose a base branch
from

Conversation

emilarista
Copy link
Contributor

@emilarista emilarista commented Dec 17, 2024

Change Summary

Implements additional interface TE options.

Also removes unnecessary doc template column added in #4754 for traffic_engineering.enabled which is already implied by the interface being added to the table (single criteria for appending to the list of interfaces is traffic_engineering.enabled == true). This would just be a column of all True values.

Related Issue(s)

Fixes part of #https://github.com/aristanetworks/avd-internal/issues/149

Component(s) name

arista.avd.eos_cli_config_gen

Proposed changes

interfaces:
  - name: ...
    traffic_engineering:
      srlg: < int >
      metric: < int >
      bandwidth:
        number: < int >
        unit: < str >
      min_delay_static:
        number: < int >
        unit: < str >

How to test

Tested with molecule and on device.

Checklist

Repository Checklist

  • My code has been rebased from devel before I start
  • I have read the CONTRIBUTING document.
  • My change requires a change to the documentation and documentation have been updated accordingly.
  • I have updated molecule CI testing accordingly. (check the box if not applicable)

@github-actions github-actions bot added role: eos_cli_config_gen issue related to eos_cli_config_gen role state: CI Updated CI scenario have been updated in the PR state: Documentation role Updated labels Dec 17, 2024
Copy link

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

@emilarista emilarista marked this pull request as ready for review December 17, 2024 14:59
@emilarista emilarista requested review from a team as code owners December 17, 2024 14:59
Comment on lines 2236 to +2241
ip address 100.64.127.4/31
traffic-engineering bandwidth 100 mbps
traffic-engineering administrative-group 4,7-100,testgrp
traffic-engineering srlg 16
traffic-engineering metric 2
traffic-engineering min-delay static 2 milliseconds
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This interface has no traffic-engineering command. Is that possible/valid? Is there a difference in EOS behavior having or not having that command? (If it is possible to not have it, I would expect it to be the "enabler" for the whole feature, and if so, we should keep the enabled flag in the doc table and set it properly depending on this.
We should also add a TODO for AVD 6.0.0 to set the enabled key as required in the schema.

Comment on lines +2255 to +2257
unit:
type: str
valid_values:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
unit:
type: str
valid_values:
unit:
type: str
required: true
valid_values:

Comment on lines +2250 to +2251
type: int
convert_types:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
type: int
convert_types:
type: int
required: true
convert_types:

Comment on lines +2235 to +2236
type: int
convert_types:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
type: int
convert_types:
type: int
required: true
convert_types:

Comment on lines +2241 to +2242
type: str
valid_values:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
type: str
valid_values:
type: str
required: true
valid_values:

Comment on lines +1432 to +1433
type: int
convert_types:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
type: int
convert_types:
type: int
required: true
convert_types:

Comment on lines +1438 to +1439
type: str
valid_values:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
type: str
valid_values:
type: str
required: true
valid_values:

Comment on lines +1417 to +1418
type: int
convert_types:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
type: int
convert_types:
type: int
required: true
convert_types:

Comment on lines +1423 to +1424
type: str
valid_values:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
type: str
valid_values:
type: str
required: true
valid_values:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
role: eos_cli_config_gen issue related to eos_cli_config_gen role state: CI Updated CI scenario have been updated in the PR state: Documentation role Updated
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants