Skip to content

[NX-OS] Add EVPN multihoming core-tracking to InterfaceConfig - #439

Merged
felix-kaestner merged 2 commits into
mainfrom
nxos/multihoming
Jul 20, 2026
Merged

[NX-OS] Add EVPN multihoming core-tracking to InterfaceConfig#439
felix-kaestner merged 2 commits into
mainfrom
nxos/multihoming

Conversation

@felix-kaestner

Copy link
Copy Markdown
Contributor

Introduce EVPNMultihoming struct in the NX-OS InterfaceConfig API with a CoreTracking field. When enabled on uplink interfaces, the switch shuts down ESI-attached access links if all tracked core-links go down, preventing traffic blackholing.

Wire the field into EnsureInterface for physical interfaces and add a golden test case for the YANG payload.

@felix-kaestner
felix-kaestner requested a review from a team July 10, 2026 14:30
@felix-kaestner
felix-kaestner enabled auto-merge (rebase) July 10, 2026 14:31
Comment thread internal/provider/cisco/nxos/provider.go
Introduce EVPNMultihoming struct in the NX-OS InterfaceConfig API
with a CoreTracking field. When enabled on uplink interfaces, the
switch shuts down ESI-attached access links if all tracked
core-links go down, preventing traffic blackholing.

Wire the field into EnsureInterface for physical interfaces and
add a golden test case for the YANG payload.

Signed-off-by: Felix Kästner <felix.kaestner@sap.com>
Use maxEcmp instead of maxExtIntEcmp for the iBGP maximum
equal-cost paths field to match the NX-OS DME model.

Signed-off-by: Felix Kästner <felix.kaestner@sap.com>
@felix-kaestner
felix-kaestner force-pushed the nxos/multihoming branch 2 times, most recently from 9c712ae to 3d71e36 Compare July 20, 2026 09:31
auto-merge was automatically disabled July 20, 2026 09:31

Pull Request is not mergeable

@github-actions

Copy link
Copy Markdown

Merging this branch will decrease overall coverage

Impacted Packages Coverage Δ 🤖
github.com/ironcore-dev/network-operator/api/cisco/nx/v1alpha1 0.00% (ø)
github.com/ironcore-dev/network-operator/internal/provider/cisco/nxos 9.52% (-0.01%) 👎

Coverage by file

Changed files (no unit tests)

Changed File Coverage Δ Total Covered Missed 🤖
github.com/ironcore-dev/network-operator/api/cisco/nx/v1alpha1/interfaceconfig_types.go 0.00% (ø) 0 0 0
github.com/ironcore-dev/network-operator/api/cisco/nx/v1alpha1/zz_generated.deepcopy.go 0.00% (ø) 0 0 0
github.com/ironcore-dev/network-operator/internal/provider/cisco/nxos/bgp.go 24.19% (ø) 62 15 47
github.com/ironcore-dev/network-operator/internal/provider/cisco/nxos/intf.go 18.37% (ø) 147 27 120
github.com/ironcore-dev/network-operator/internal/provider/cisco/nxos/provider.go 0.05% (-0.00%) 1984 (+2) 1 1983 (+2) 👎

Please note that the "Total", "Covered", and "Missed" counts above refer to code statements instead of lines of code. The value in brackets refers to the test coverage of that file in the old version of the code.

Changed unit test files

  • github.com/ironcore-dev/network-operator/internal/provider/cisco/nxos/intf_test.go

@felix-kaestner
felix-kaestner merged commit 5458745 into main Jul 20, 2026
24 checks passed
@felix-kaestner
felix-kaestner deleted the nxos/multihoming branch July 20, 2026 09:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants