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

Add support for configuring interface_profiles and setting them on et… #983

Merged

Conversation

quulah
Copy link
Contributor

@quulah quulah commented May 28, 2021

Change Summary

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes)
  • Documentation content changes
  • Other (please describe):

Related Issue(s)

Related to #979

Requires merge of PR #1008 first.

Component(s) name

arista.avd.eos_cli_config_gen

Proposed changes

  • Add supports for specifying interface profile parameters as well as setting them on Ethernet interfaces

How to test

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.
  • I have updated the documentation accordingly.
  • I have updated molecule CI testing accordingly
  • All new and existing tests passed (pre-commit, make linting and make sanity-lint).

@github-actions github-actions bot added role: eos_cli_config_gen issue related to eos_cli_config_gen role state: Documentation role Updated labels May 28, 2021
@quulah quulah force-pushed the add-interface-profiles branch from 49bdf13 to 10d551b Compare May 31, 2021 12:56
@github-actions github-actions bot added the state: CI Updated CI scenario have been updated in the PR label May 31, 2021
@github-actions github-actions bot requested a review from carlbuchmann May 31, 2021 12:56
@quulah
Copy link
Contributor Author

quulah commented May 31, 2021

Rebased to current devel and added the Molecule test for the new interface_profiles variable.

Didn't expect the rest of the configs to change, but there was actually a profile: ALL in some of the older tests. Uploaded the changed file, but unsure how to continue with those.

@titom73 titom73 added the type: enhancement New feature or request label Jun 2, 2021
@titom73
Copy link
Contributor

titom73 commented Jun 2, 2021

Hello @quulah

profile: ALL was a key not rendered by eos_cli_config_gen. As each host in this test is considered as independent, you can just focus on your own test file (interface-profiles) for the configuration rendering.

I will go ahead and remove other references in qos and ethernet-interfaces hosts.

Besides that, all the PR is nice !

@titom73
Copy link
Contributor

titom73 commented Jun 2, 2021

Hello @quulah

profile: ALL was a key not rendered by eos_cli_config_gen. As each host in this test is considered as independent, you can just focus on your own test file (interface-profiles) for the configuration rendering.

I will go ahead and remove other references in qos and ethernet-interfaces hosts.

Besides that, all the PR is nice !

Actually, I tried to push, but seems you have not enabled push from maintainers.

So, you can simply remove all references to profile: ALL in files listed above and update molecule.

@titom73 titom73 added this to the v2.2.0 milestone Jun 3, 2021
@quulah
Copy link
Contributor Author

quulah commented Jun 4, 2021

👍 Did that, should be sorted out now.

Copy link
Contributor

@titom73 titom73 left a comment

Choose a reason for hiding this comment

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

All templates and CI definition look good. But interface-profile is missing from master templates for configuration and documentation.

Please add entry to cover your feature in global rendering. Indeed, output of CI is not rendering your unit test.

@github-actions github-actions bot requested a review from titom73 June 7, 2021 07:26
@quulah
Copy link
Contributor Author

quulah commented Jun 7, 2021

Good catch! Fixed now.

Copy link
Contributor

@titom73 titom73 left a comment

Choose a reason for hiding this comment

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

LGTM!

Thanks

@titom73
Copy link
Contributor

titom73 commented Jun 7, 2021

As per Molecule, it seems there is a conflict with a key ingested by eos_designs that set profile inherited for port-profile out of EOS configuration.

Will take it on hold, time to review and see how to fix that with @carlbuchmann and @ClausHolbechArista

@titom73 titom73 added the state: conflict PR with conflict label Jun 7, 2021
@ClausHolbechArista
Copy link
Contributor

@titom73 Not sure why, but for some reason we have always set the profile: <avd port-profile> in the generated structured config. It is not used, so I suggest that we remove it from ethernet-interfaces.j2 and port-channel-interfaces.j2 under templates/connected-endpoints. I can do it in a seperate PR?

@ClausHolbechArista
Copy link
Contributor

For AVD3.0 we could consider renaming the AVD "profiles" to "templates" to avoid the naming conflict.

@github-actions
Copy link

github-actions bot commented Jun 7, 2021

Conflicts have been resolved. A maintainer will review the pull request shortly.

@github-actions github-actions bot removed the state: conflict PR with conflict label Jun 7, 2021
@ClausHolbechArista
Copy link
Contributor

PR #1008 has merged which removed the unintentional profiles. Please rerun molecule and commit updated artifacts.

@github-actions github-actions bot requested a review from titom73 June 9, 2021 11:53
@ClausHolbechArista ClausHolbechArista modified the milestones: v2.2.0, v3.0.0 Jun 11, 2021
@quulah quulah force-pushed the add-interface-profiles branch from b1cf512 to d17d1ab Compare June 11, 2021 11:06
@quulah
Copy link
Contributor Author

quulah commented Jun 11, 2021

Rebased and pushed as per @ClausHolbechArista request.

Something funky going on in the pipelines though:

x509: certificate is valid for legacy.python.org, not svn.python.org	https://svn.python.org/projects/external/Jinja-2.1.1/docs/_build/html/extensions.html

@ClausHolbechArista
Copy link
Contributor

Yeah we tried to fix it with #1023
Can you try to pull that in

@ClausHolbechArista
Copy link
Contributor

nevermind. I found another link. Time for weekend! :)

Copy link
Contributor

@ClausHolbechArista ClausHolbechArista left a comment

Choose a reason for hiding this comment

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

LGTM

@ClausHolbechArista ClausHolbechArista merged commit 53ed581 into aristanetworks:devel Jun 11, 2021
@ClausHolbechArista ClausHolbechArista modified the milestones: v3.0.0, v2.2.0 Jun 11, 2021
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 type: enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants