Skip to content

Create and reconcile ServerNetworkConfig alongside BMC#145

Open
xkonni wants to merge 1 commit intomainfrom
feat/networkCheck
Open

Create and reconcile ServerNetworkConfig alongside BMC#145
xkonni wants to merge 1 commit intomainfrom
feat/networkCheck

Conversation

@xkonni
Copy link
Copy Markdown

@xkonni xkonni commented Apr 2, 2026

metal-operator now gates the Discovery→Available transition on the presence of a ServerNetworkConfig object per server. This change makes argora responsible for creating that object when a BMC is first provisioned and keeping its spec.interfaces up-to-date on every subsequent reconcile.

Changes:

  • Add go.mod replace directive pointing at the local metal-operator fork that contains the new ServerNetworkConfig type (upstream version TBD)
  • Add Namespace field to IronCoreReconciler with a corresponding --ironcore-namespace CLI flag; ServerNetworkConfig is namespace-scoped unlike BMC/BMCSecret which are cluster-scoped
  • Add RBAC marker for servernetworkconfigs (get/list/watch/create/update/patch)
  • Add buildExpectedInterfaces: queries NetBox DCIM for the device's interfaces and filters out LAG, mgmt-only, and unconnected entries
  • Add createServerNetworkConfig: called once after a new BMC is created
  • Add updateServerNetworkConfig: called on every reconcile when the BMC already exists, patches spec.interfaces and labels to reflect the current NetBox state; falls back to create if the object is missing

Important

metal-operator now gates the Discovery→Available transition on the
presence of a ServerNetworkConfig object per server. This change makes
argora responsible for creating that object when a BMC is first
provisioned and keeping its spec.interfaces up-to-date on every
subsequent reconcile.

Changes:
- Add go.mod replace directive pointing at the local metal-operator fork
  that contains the new ServerNetworkConfig type (upstream version TBD)
- Add Namespace field to IronCoreReconciler with a corresponding
  --ironcore-namespace CLI flag; ServerNetworkConfig is namespace-scoped
  unlike BMC/BMCSecret which are cluster-scoped
- Add RBAC marker for servernetworkconfigs (get/list/watch/create/update/patch)
- Add buildExpectedInterfaces: queries NetBox DCIM for the device's
  interfaces and filters out LAG, mgmt-only, and unconnected entries
- Add createServerNetworkConfig: called once after a new BMC is created
- Add updateServerNetworkConfig: called on every reconcile when the BMC
  already exists, patches spec.interfaces and labels to reflect the
  current NetBox state; falls back to create if the object is missing
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant