Skip to content

Add AI iBGP / eBGP VXLAN Fabric Modules#256

Draft
mtarking wants to merge 3 commits intodevelopfrom
issue-254
Draft

Add AI iBGP / eBGP VXLAN Fabric Modules#256
mtarking wants to merge 3 commits intodevelopfrom
issue-254

Conversation

@mtarking
Copy link
Copy Markdown
Collaborator

Related Issue(s)

Resolves #254
Resolves #255

Proposed Changes

Add new nd_manage_fabric_ai_ibgp_vxlan and nd_manage_fabric_ai_ebgp_vxlan modules for managing AI/ML iBGP and eBGP VXLAN fabrics on Nexus Dashboard.

New files:

  • plugins/module_utils/models/manage_fabric/manage_fabric_ai_ibgp_vxlan.py — Pydantic model with AimlVxlanIbgpManagementModel inheriting from VxlanIbgpManagementModel (overrides type discriminator to aimlVxlanIbgp), and FabricAiIbgpVxlanModel with shared fabric properties, Literal[FabricTypeEnum.AIML_VXLAN_IBGP] type discriminator, and single identifier strategy on fabric_name
  • plugins/module_utils/models/manage_fabric/manage_fabric_ai_ebgp_vxlan.py — Pydantic model with AimlVxlanEbgpManagementModel inheriting from VxlanEbgpManagementModel (overrides type discriminator to aimlVxlanEbgp), FabricAiEbgpVxlanModel with to_diff_dict() override excluding nxapiHttp, and single identifier strategy on fabric_name
  • plugins/module_utils/orchestrators/manage_fabric_ai_ibgp_vxlan.py — Orchestrator reusing EpManageFabrics* endpoints with custom query_all filtering for management.type=="aimlVxlanIbgp"
  • plugins/module_utils/orchestrators/manage_fabric_ai_ebgp_vxlan.py — Orchestrator reusing EpManageFabrics* endpoints with custom query_all filtering for management.type=="aimlVxlanEbgp"
  • plugins/modules/nd_manage_fabric_ai_ibgp_vxlan.py — Module supporting merged, replaced, overridden, and deleted states
  • plugins/modules/nd_manage_fabric_ai_ebgp_vxlan.py — Module supporting merged, replaced, overridden, and deleted states

Modified files:

  • plugins/module_utils/models/manage_fabric/enums.py — Added AIML_VXLAN_IBGP = "aimlVxlanIbgp" and AIML_VXLAN_EBGP = "aimlVxlanEbgp" to FabricTypeEnum

New tests:

  • tests/integration/targets/nd_manage_fabric/tasks/fabric_ai_ibgp.yaml — Integration tests covering create, update, replace, override, delete, check mode, and idempotency
  • tests/integration/targets/nd_manage_fabric/tasks/fabric_ai_ebgp.yaml — Integration tests covering create, update, replace, override, delete, check mode, and idempotency
  • tests/integration/targets/nd_manage_fabric/tasks/main.yaml — Added AI iBGP and AI eBGP test includes
  • tests/integration/targets/nd_manage_fabric/vars/main.yaml — Added AI iBGP and AI eBGP test variables

Test Notes

  • 309 unit tests passing (0 new + 309 existing), 0 failures
  • Integration tests cover: single fabric creation, merged updates (idempotency, partial updates), replaced state (idempotency, full replacement with defaults validation), overridden state, deletion with idempotency, and check mode for all states

Cisco Nexus Dashboard Version

4.2.1

Related ND API Resource Category

  • analyze
  • infa
  • manage
  • onemanage
  • other

Checklist

  • Latest commit is rebased from develop with merge conflicts resolved
  • New or updates to documentation has been made accordingly
  • Assigned the proper reviewers

@mtarking mtarking self-assigned this Apr 13, 2026
@mtarking mtarking added enhancement New feature or request tests Tests added/updated/modified 2.0.0 Release 2.0.0 labels Apr 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2.0.0 Release 2.0.0 enhancement New feature or request tests Tests added/updated/modified

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ND 4.2+] Add AI iBGP VXLAN Fabric Type Module [ND 4.2+] Add AI eBGP VXLAN Fabric Type Module

1 participant