Skip to content

[ansible][minigraph] Enhance template for adding autonegotiation in Mellanox and add Arista 7260 template changes#15004

Merged
prgeor merged 1 commit intosonic-net:masterfrom
vdahiya12:dev/vdahiya/add-7260
Oct 22, 2024
Merged

[ansible][minigraph] Enhance template for adding autonegotiation in Mellanox and add Arista 7260 template changes#15004
prgeor merged 1 commit intosonic-net:masterfrom
vdahiya12:dev/vdahiya/add-7260

Conversation

@vdahiya12
Copy link
Contributor

@vdahiya12 vdahiya12 commented Oct 15, 2024

Description of PR

This pull request introduces modifications to the arista_7260cx3_deploy.j2 and minigraph_link_meta.j2 templates in the sonic-mgmt repository. The changes primarily focus on handling speed and auto-negotiation configurations for devices.

MSFT ADO

29900213

  • Autoneg/Forced speed setting is applied directly as 100gfull with Reed-Solomon error correction encoding.

  • Adjusted the interface naming convention for devices, now consistently using the EthernetX/1 format.
    Removed vendor-specific logic (Mellanox handling) to unify the approach for generating auto-negotiation metadata across devices.

Summary:
Fixes # (issue)

Type of change

  • Bug fix
  • Testbed and Framework(new/improvement)
  • Test case(new/improvement)

Back port request

  • 202012
  • 202205
  • 202305
  • 202311
  • 202405

Approach

What is the motivation for this PR?

How did you do it?

How did you verify/test it?

Any platform specific information?

Supported testbed topology if it's a new test case?

Documentation

…ellanox and add EOS 7260 template changes

Signed-off-by: Vaibhav Dahiya <[email protected]>
@vdahiya12 vdahiya12 changed the title [ansible][minigraph] Enhance template for adding autonegotiation in Mellanox and add EOS 7260 template changes [ansible][minigraph] Enhance template for adding autonegotiation in Mellanox and add Arista 7260 template changes Oct 15, 2024
@mssonicbld
Copy link
Collaborator

@vdahiya12 PR conflicts with 202311 branch

@mssonicbld
Copy link
Collaborator

@vdahiya12 PR conflicts with 202305 branch

@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202405: #15194

mssonicbld pushed a commit that referenced this pull request Oct 26, 2024
…ellanox and add EOS 7260 template changes (#15004)

Signed-off-by: Vaibhav Dahiya <[email protected]>
vdahiya12 added a commit to vdahiya12/sonic-mgmt that referenced this pull request Oct 28, 2024
…ellanox and add EOS 7260 template changes (sonic-net#15004)

Signed-off-by: Vaibhav Dahiya <[email protected]>
vdahiya12 added a commit to vdahiya12/sonic-mgmt that referenced this pull request Oct 28, 2024
…ellanox and add EOS 7260 template changes (sonic-net#15004)

Signed-off-by: Vaibhav Dahiya <[email protected]>
wangxin pushed a commit that referenced this pull request Oct 29, 2024
…aph templates and fanout EOS (#13990) (#15196)

* [ansible][minigraph] add support for adding autonegotiation in minigraph templates and fanout EOS (#13990)

These changes add a support for adding auto negotiation to specific testbed based on variables defined in ansible

Two things are required for autoneg support

1. autoneg_enabled : True
must be enabled in inventory files
2. t0 topo file must have a port list for autoneg
Example:
intfs : [1, 2, 3, 4, 5, 6, 7, 8]
With these changes the PR includes changes to pick the port numbering from topo file and apply minigraph parsing changes such that during deploy-mg or gen-mg the required ports have autoneg and deployment is clean with link up

Signed-off-by: Vaibhav Dahiya <[email protected]>

* [ansible][minigraph] enhance template for adding autonegotiation in Mellanox and add EOS 7260 template changes (#15004)

Signed-off-by: Vaibhav Dahiya <[email protected]>

* [ansible][minigraph] Fix minigraph template for devices which have autoneg enabled but the topo file does not contain autoneg interfaces (#15134)

This pull request updates the Jinja2 template minigraph_link_meta.j2 by modifying the generation of the section.

Key Changes:
* The condition has been changed from simply checking if msft_an_enabled is defined to also checking if vm_topo_config.get('autoneg_interfaces') is not None.
* This ensures that the section is only included if both msft_an_enabled is defined and the autoneg_interfaces attribute in vm_topo_config exists and is not None.

This ensures if some testbeds/devices have msft_an_enabled they do not end up treated as autoneg devices unless the topo file contains the AN interface list

Signed-off-by: Vaibhav Dahiya <[email protected]>
wangxin pushed a commit that referenced this pull request Oct 29, 2024
…ph templates and fanout EOS (#13990) (#15197)

* [ansible][minigraph] add support for adding autonegotiation in minigraph templates and fanout EOS (#13990)

These changes add a support for adding auto negotiation to specific testbed based on variables defined in ansible

Two things are required for autoneg support

1. autoneg_enabled : True
must be enabled in inventory files
2. t0 topo file must have a port list for autoneg
Example:
intfs : [1, 2, 3, 4, 5, 6, 7, 8]
With these changes the PR includes changes to pick the port numbering from topo file and apply minigraph parsing changes such that during deploy-mg or gen-mg the required ports have autoneg and deployment is clean with link up

Signed-off-by: Vaibhav Dahiya <[email protected]>

* [ansible][minigraph] enhance template for adding autonegotiation in Mellanox and add EOS 7260 template changes (#15004)

Signed-off-by: Vaibhav Dahiya <[email protected]>

* [ansible][minigraph] Fix minigraph template for devices which have autoneg enabled but the topo file does not contain autoneg interfaces (#15134)

This pull request updates the Jinja2 template minigraph_link_meta.j2 by modifying the generation of the section.

Key Changes:
* The condition has been changed from simply checking if msft_an_enabled is defined to also checking if vm_topo_config.get('autoneg_interfaces') is not None.
* This ensures that the section is only included if both msft_an_enabled is defined and the autoneg_interfaces attribute in vm_topo_config exists and is not None.

This ensures if some testbeds/devices have msft_an_enabled they do not end up treated as autoneg devices unless the topo file contains the AN interface list

Signed-off-by: Vaibhav Dahiya <[email protected]>
sreejithsreekumaran pushed a commit to sreejithsreekumaran/sonic-mgmt that referenced this pull request Nov 15, 2024
…ellanox and add EOS 7260 template changes (sonic-net#15004)

Signed-off-by: Vaibhav Dahiya <[email protected]>
wangxin added a commit to wangxin/sonic-mgmt that referenced this pull request Apr 11, 2025
PR sonic-net#15004 enhanced the connection graph csv files to support "AutoNeg".
After this change, deploy fanout switch using connection graph csv files
missing this field would fail.

This change updated the fanout deploy template to best effort getting
value of "autoneg" for links. With this change, the field "AutoNeg" in csv
file would be optional and default to "no".

Signed-off-by: Xin Wang <[email protected]>
StormLiangMS pushed a commit that referenced this pull request Apr 18, 2025
PR #15004 enhanced the connection graph csv files to support "AutoNeg".
After this change, deploy fanout switch using connection graph csv files
missing this field would fail.

This change updated the fanout deploy template to best effort getting
value of "autoneg" for links. With this change, the field "AutoNeg" in csv
file would be optional and default to "no".

Signed-off-by: Xin Wang <[email protected]>
opcoder0 pushed a commit to opcoder0/sonic-mgmt that referenced this pull request Dec 8, 2025
PR sonic-net#15004 enhanced the connection graph csv files to support "AutoNeg".
After this change, deploy fanout switch using connection graph csv files
missing this field would fail.

This change updated the fanout deploy template to best effort getting
value of "autoneg" for links. With this change, the field "AutoNeg" in csv
file would be optional and default to "no".

Signed-off-by: Xin Wang <[email protected]>
AharonMalkin pushed a commit to AharonMalkin/sonic-mgmt that referenced this pull request Dec 16, 2025
PR sonic-net#15004 enhanced the connection graph csv files to support "AutoNeg".
After this change, deploy fanout switch using connection graph csv files
missing this field would fail.

This change updated the fanout deploy template to best effort getting
value of "autoneg" for links. With this change, the field "AutoNeg" in csv
file would be optional and default to "no".

Signed-off-by: Xin Wang <[email protected]>
Signed-off-by: Aharon Malkin <[email protected]>
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Dec 21, 2025
PR sonic-net#15004 enhanced the connection graph csv files to support "AutoNeg".
After this change, deploy fanout switch using connection graph csv files
missing this field would fail.

This change updated the fanout deploy template to best effort getting
value of "autoneg" for links. With this change, the field "AutoNeg" in csv
file would be optional and default to "no".

Signed-off-by: Xin Wang <[email protected]>
Signed-off-by: Guy Shemesh <[email protected]>
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Jan 26, 2026
PR sonic-net#15004 enhanced the connection graph csv files to support "AutoNeg".
After this change, deploy fanout switch using connection graph csv files
missing this field would fail.

This change updated the fanout deploy template to best effort getting
value of "autoneg" for links. With this change, the field "AutoNeg" in csv
file would be optional and default to "no".

Signed-off-by: Xin Wang <[email protected]>
Signed-off-by: Guy Shemesh <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants