Skip to content

Apinetlet overrides labels for nics set by others #417

@ushabelgur

Description

@ushabelgur

Describe the bug
apinetlet overrides labels for nics. We use custom label in libvirt-provider for cleanup logic but apinetlet later during reconciliation will override all labels with his.

To Reproduce
Create a ironcore machine with NIC and observe NIC object in apinet

Expected behavior
Ideally apinetlet should keep labels created by someone else.
libvirt-provider can add label back later, as it reconciles later but it still isn't good for cleanup function because we still can have some edge cases when machine is created and deleted very quickly.

Additional context

kreg get networkinterfaces.core.apinet.ironcore.dev f5a903a9-5378-5518-b525-0b767f26fb92 -n ironcore-net-system -o yaml -w
apiVersion: core.apinet.ironcore.dev/v1alpha1
kind: NetworkInterface
metadata:
  creationTimestamp: "2025-06-23T09:09:00Z"
  finalizers:
  - partition.metalnetlet.apinet.ironcore.dev/ironcore3-vm1
  labels:
    libvirt-provider/hostname: ironcore3-vm1.ironcore3-vm1-n1
  name: f5a903a9-5378-5518-b525-0b767f26fb92
  namespace: ironcore-net-system
  resourceVersion: "1269784979"
  uid: 22507fa6-48ce-4091-bd93-1af9c7e8426f
spec:
  ips:
  - 192.168.0.1
  networkRef:
    name: a99f7b5a-8fca-4b35-93df-feff9e881c35
  nodeRef:
    name: ironcore3-vm1.ironcore3-vm1-n1
status:
  pciAddress:
    bus: 4b
    domain: "0000"
    function: "6"
    slot: "02"
  state: Ready

---
apiVersion: core.apinet.ironcore.dev/v1alpha1
kind: NetworkInterface
metadata:
  creationTimestamp: "2025-06-23T09:09:00Z"
  finalizers:
  - partition.metalnetlet.apinet.ironcore.dev/ironcore3-vm1
  labels:
    apinetlet.ironcore.dev/networkinterface-name: machine1-primary
    apinetlet.ironcore.dev/networkinterface-namespace: f0002-create-multiple-machines-parallel-44o4f
    apinetlet.ironcore.dev/networkinterface-uid: 71ce857e-8683-4980-960a-aae360b13d23
  name: f5a903a9-5378-5518-b525-0b767f26fb92
  namespace: ironcore-net-system
  resourceVersion: "1269785444"
  uid: 22507fa6-48ce-4091-bd93-1af9c7e8426f
spec:
  ips:
  - 192.168.0.1
  networkRef:
    name: a99f7b5a-8fca-4b35-93df-feff9e881c35
  nodeRef:
    name: ironcore3-vm1.ironcore3-vm1-n1
status:
  pciAddress:
    bus: 4b
    domain: "0000"
    function: "6"
    slot: "02"
  state: Ready

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/iaasIssues related to IronCore IaaS development.area/networkingNetworking-related tasks and improvements.bugSomething isn't working

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions