feat: add Multus CNI integration with socket-based readiness #4969
42 tests run, 30 passed, 8 skipped, 4 failed.
Annotations
Check failure on line 1 in caren-e2e
github-actions / e2e test report
caren-e2e.[It] Quick start Nutanix Cilium ClusterResourceSet topology-cilium-crs Should create a workload cluster [provider:Nutanix, cni:Cilium, addonStrategy:ClusterResourceSet]
Timed out after 600.001s.
No Control Plane machines came into existence.
Expected
<bool>: false
to be true
Raw output
[FAILED] Timed out after 600.001s.
No Control Plane machines came into existence.
Expected
<bool>: false
to be true
In [It] at: /home/runner/go/pkg/mod/sigs.k8s.io/cluster-api/[email protected]/framework/controlplane_helpers.go:153 @ 10/31/25 00:05:04.595
Check failure on line 1 in caren-e2e
github-actions / e2e test report
caren-e2e.[It] Quick start Nutanix Cilium ClusterResourceSet topology-with-failuredomains-cilium-crs Should create a workload cluster [provider:Nutanix, cni:Cilium, addonStrategy:ClusterResourceSet]
Timed out after 600.000s.
No Control Plane machines came into existence.
Expected
<bool>: false
to be true
Raw output
[FAILED] Timed out after 600.000s.
No Control Plane machines came into existence.
Expected
<bool>: false
to be true
In [It] at: /home/runner/go/pkg/mod/sigs.k8s.io/cluster-api/[email protected]/framework/controlplane_helpers.go:153 @ 10/31/25 00:05:14.99
Check failure on line 1 in caren-e2e
github-actions / e2e test report
caren-e2e.[It] Quick start Nutanix Cilium HelmAddon topology-cilium-helm-addon Should create a workload cluster [provider:Nutanix, cni:Cilium, addonStrategy:HelmAddon]
Timed out after 600.001s.
No Control Plane machines came into existence.
Expected
<bool>: false
to be true
Raw output
[FAILED] Timed out after 600.001s.
No Control Plane machines came into existence.
Expected
<bool>: false
to be true
In [It] at: /home/runner/go/pkg/mod/sigs.k8s.io/cluster-api/[email protected]/framework/controlplane_helpers.go:153 @ 10/31/25 00:05:04.696
Check failure on line 1 in caren-e2e
github-actions / e2e test report
caren-e2e.[It] Quick start Nutanix Cilium HelmAddon topology-with-failuredomains-cilium-helm-addon Should create a workload cluster [provider:Nutanix, cni:Cilium, addonStrategy:HelmAddon]
Timed out after 300.001s.
HelmReleaseProxy quick-start-tnbwy6/cilium-quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnx75vt failed to become ready and have up to date revision: ready condition = &{Type:Ready Status:False Severity:Info LastTransitionTime:2025-10-31 00:00:59 +0000 UTC Reason:HelmReleasePending Message:Helm release is in a pending state: pending-install}, revision = 1, full object is:
&{TypeMeta:{Kind:HelmReleaseProxy APIVersion:addons.cluster.x-k8s.io/v1alpha1} ObjectMeta:{Name:cilium-quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnx75vt GenerateName:cilium-quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnj3s896is7wf0- Namespace:quick-start-tnbwy6 SelfLink: UID:f4f0c1b8-c520-4529-8bac-cc94cfca6522 ResourceVersion:4859 Generation:1 CreationTimestamp:2025-10-30 23:59:38 +0000 UTC DeletionTimestamp:<nil> DeletionGracePeriodSeconds:<nil> Labels:map[cluster.x-k8s.io/cluster-name:quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnj3s896is7wf0 helmreleaseproxy.addons.cluster.x-k8s.io/helmchartproxy-name:cilium-019a378b-858f-7b15-ad73-569ed4d27381] Annotations:map[] OwnerReferences:[{APIVersion:addons.cluster.x-k8s.io/v1alpha1 Kind:HelmChartProxy Name:cilium-019a378b-858f-7b15-ad73-569ed4d27381 UID:876cb8c4-843a-484e-a903-930dd4871e9f Controller:0xc000e90d17 BlockOwnerDeletion:0xc000e90d16}] Finalizers:[helmreleaseproxy.addons.cluster.x-k8s.io] ManagedFields:[{Manager:manager Operation:Update APIVersion:addons.cluster.x-k8s.io/v1alpha1 Time:2025-10-30 23:59:39 +0000 UTC FieldsType:FieldsV1 FieldsV1:{"f:metadata":{"f:finalizers":{".":{},"v:\"helmreleaseproxy.addons.cluster.x-k8s.io\"":{}},"f:generateName":{},"f:labels":{".":{},"f:cluster.x-k8s.io/cluster-name":{},"f:helmreleaseproxy.addons.cluster.x-k8s.io/helmchartproxy-name":{}},"f:ownerReferences":{".":{},"k:{\"uid\":\"876cb8c4-843a-484e-a903-930dd4871e9f\"}":{}}},"f:spec":{".":{},"f:chartName":{},"f:clusterRef":{},"f:namespace":{},"f:options":{".":{},"f:enableClientCache":{},"f:install":{".":{},"f:createNamespace":{}},"f:timeout":{},"f:upgrade":{".":{},"f:maxHistory":{}}},"f:releaseName":{},"f:repoURL":{},"f:tlsConfig":{".":{},"f:caSecret":{}},"f:values":{},"f:version":{}}} Subresource:} {Manager:manager Operation:Update APIVersion:addons.cluster.x-k8s.io/v1alpha1 Time:2025-10-31 00:00:59 +0000 UTC FieldsType:FieldsV1 FieldsV1:{"f:status":{".":{},"f:conditions":{},"f:observedGeneration":{},"f:revision":{},"f:status":{}}} Subresource:status}]} Spec:{ClusterRef:{Kind:Cluster Namespace:quick-start-tnbwy6 Name:quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnj3s896is7wf0 UID: APIVersion:cluster.x-k8s.io/v1beta1 ResourceVersion: FieldPath:} ChartName:cilium RepoURL:oci://helm-repository.caren-system.svc/charts ReleaseName:cilium ReleaseNamespace:kube-system Version:1.18.2 Values:cni:
exclusive: false
hubble:
enabled: true
tls:
auto:
enabled: true # enable automatic TLS certificate generation
method: cronJob # auto generate certificates using cronJob method
certValidityDuration: 60 # certificates validity duration in days (default 2 months)
schedule: "0 0 1 * *" # schedule on the 1st day regeneration of each month
relay:
enabled: true
tls:
server:
enabled: true
mtls: true
image:
useDigest: false
priorityClassName: system-cluster-critical
ipam:
mode: kubernetes
image:
useDigest: false
operator:
image:
useDigest: false
certgen:
image:
useDigest: false
socketLB:
hostNamespaceOnly: true
envoy:
image:
useDigest: false
k8sServiceHost: "10.23.132.75"
k8sServicePort: "6443"
kubeProxyReplacement: true
tunnelProtocol: geneve
loadBalancer:
mode: dsr
dsrDispatch: geneve ReconcileStrategy: Options:{DisableHooks:false Wait:false WaitForJobs:false DependencyUpdate:false Timeout:&Duration{Duration:10m0s,} SkipCRDs:false SubNotes:false DisableOpenAPIValidation:false Atomic:false Install:{CreateNamespace:true IncludeCRDs:false} Upgrade:{Force:false ResetValues:false ReuseValues:false ResetThenReuseValues:false Recreate:false MaxHistory:10 CleanupOnFail:false} Uninstall:<nil> EnableClientCache:false} Credentials:<nil> TLSConfig:0xc0018afcb0} Status:{Conditions:[{Type:Ready Status:False Severity:Info LastTransitionTime:2025-10-31 00:00:59 +0000 UTC Reason:HelmReleasePending Message:Helm release is in a pending state: pending-install} {Type:ClusterAvailable Status:True Severity: LastTransitionTime:2025-10-30 23:59:39 +0000 UTC Reason: Message:} {Type:HelmReleaseReady Status:False Severity:Info LastTransitionTime:2025-10-31 00:00:59 +0000 UTC Reason:HelmReleasePending Message:Helm release is in a pending state: pending-install}] Status:pending-install Revision:1 ObservedGeneration:1}}
`
Expected
<bool>: false
to be true
Raw output
[FAILED] Timed out after 300.001s.
HelmReleaseProxy quick-start-tnbwy6/cilium-quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnx75vt failed to become ready and have up to date revision: ready condition = &{Type:Ready Status:False Severity:Info LastTransitionTime:2025-10-31 00:00:59 +0000 UTC Reason:HelmReleasePending Message:Helm release is in a pending state: pending-install}, revision = 1, full object is:
&{TypeMeta:{Kind:HelmReleaseProxy APIVersion:addons.cluster.x-k8s.io/v1alpha1} ObjectMeta:{Name:cilium-quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnx75vt GenerateName:cilium-quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnj3s896is7wf0- Namespace:quick-start-tnbwy6 SelfLink: UID:f4f0c1b8-c520-4529-8bac-cc94cfca6522 ResourceVersion:4859 Generation:1 CreationTimestamp:2025-10-30 23:59:38 +0000 UTC DeletionTimestamp:<nil> DeletionGracePeriodSeconds:<nil> Labels:map[cluster.x-k8s.io/cluster-name:quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnj3s896is7wf0 helmreleaseproxy.addons.cluster.x-k8s.io/helmchartproxy-name:cilium-019a378b-858f-7b15-ad73-569ed4d27381] Annotations:map[] OwnerReferences:[{APIVersion:addons.cluster.x-k8s.io/v1alpha1 Kind:HelmChartProxy Name:cilium-019a378b-858f-7b15-ad73-569ed4d27381 UID:876cb8c4-843a-484e-a903-930dd4871e9f Controller:0xc000e90d17 BlockOwnerDeletion:0xc000e90d16}] Finalizers:[helmreleaseproxy.addons.cluster.x-k8s.io] ManagedFields:[{Manager:manager Operation:Update APIVersion:addons.cluster.x-k8s.io/v1alpha1 Time:2025-10-30 23:59:39 +0000 UTC FieldsType:FieldsV1 FieldsV1:{"f:metadata":{"f:finalizers":{".":{},"v:\"helmreleaseproxy.addons.cluster.x-k8s.io\"":{}},"f:generateName":{},"f:labels":{".":{},"f:cluster.x-k8s.io/cluster-name":{},"f:helmreleaseproxy.addons.cluster.x-k8s.io/helmchartproxy-name":{}},"f:ownerReferences":{".":{},"k:{\"uid\":\"876cb8c4-843a-484e-a903-930dd4871e9f\"}":{}}},"f:spec":{".":{},"f:chartName":{},"f:clusterRef":{},"f:namespace":{},"f:options":{".":{},"f:enableClientCache":{},"f:install":{".":{},"f:createNamespace":{}},"f:timeout":{},"f:upgrade":{".":{},"f:maxHistory":{}}},"f:releaseName":{},"f:repoURL":{},"f:tlsConfig":{".":{},"f:caSecret":{}},"f:values":{},"f:version":{}}} Subresource:} {Manager:manager Operation:Update APIVersion:addons.cluster.x-k8s.io/v1alpha1 Time:2025-10-31 00:00:59 +0000 UTC FieldsType:FieldsV1 FieldsV1:{"f:status":{".":{},"f:conditions":{},"f:observedGeneration":{},"f:revision":{},"f:status":{}}} Subresource:status}]} Spec:{ClusterRef:{Kind:Cluster Namespace:quick-start-tnbwy6 Name:quick-start-j6icxima06h5jpxr5c9kwm4uxfm3d1t8wtvm7jnj3s896is7wf0 UID: APIVersion:cluster.x-k8s.io/v1beta1 ResourceVersion: FieldPath:} ChartName:cilium RepoURL:oci://helm-repository.caren-system.svc/charts ReleaseName:cilium ReleaseNamespace:kube-system Version:1.18.2 Values:cni:
exclusive: false
hubble:
enabled: true
tls:
auto:
enabled: true # enable automatic TLS certificate generation
method: cronJob # auto generate certificates using cronJob method
certValidityDuration: 60 # certificates validity duration in days (default 2 months)
schedule: "0 0 1 * *" # schedule on the 1st day regeneration of each month
relay:
enabled: true
tls:
server:
enabled: true
mtls: true
image:
useDigest: false
priorityClassName: system-cluster-critical
ipam:
mode: kubernetes
image:
useDigest: false
operator:
image:
useDigest: false
certgen:
image:
useDigest: false
socketLB:
hostNamespaceOnly: true
envoy:
image:
useDigest: false
k8sServiceHost: "10.23.132.75"
k8sServicePort: "6443"
kubeProxyReplacement: true
tunnelProtocol: geneve
loadBalancer:
mode: dsr
dsrDispatch: geneve ReconcileStrategy: Options:{DisableHooks:false Wait:false WaitForJobs:false DependencyUpdate:false Timeout:&Duration{Duration:10m0s,} SkipCRDs:false SubNotes:false DisableOpenAPIValidation:false Atomic:false Install:{CreateNamespace:true IncludeCRDs:false} Upgrade:{Force:false ResetValues:false ReuseValues:false ResetThenReuseValues:false Recreate:false MaxHistory:10 CleanupOnFail:false} Uninstall:<nil> EnableClientCache:false} Credentials:<nil> TLSConfig:0xc0018afcb0} Status:{Conditions:[{Type:Ready Status:False Severity:Info LastTransitionTime:2025-10-31 00:00:59 +0000 UTC Reason:HelmReleasePending Message:Helm release is in a pending state: pending-install} {Type:ClusterAvailable Status:True Severity: LastTransitionTime:2025-10-30 23:59:39 +0000 UTC Reason: Message:} {Type:HelmReleaseReady Status:False Severity:Info LastTransitionTime:2025-10-31 00:00:59 +0000 UTC Reason:HelmReleasePending Message:Helm release is in a pending state: pending-install}] Status:pending-install Revision:1 ObservedGeneration:1}}
`
Expected
<bool>: false
to be true
In [It] at: /home/runner/_work/cluster-api-runtime-extensions-nutanix/cluster-api-runtime-extensions-nutanix/test/e2e/helmreleaseproxy_helpers.go:60 @ 10/31/25 00:10:43.422