Files
kubespray/tests/files/custom_cni/README.md
T
Kay Yan 990d3035a1 Fix custom_cni manifest apply failure for multi-namespace resources (#13091)
* fix(custom_cni): make namespace optional

Keep kube-system as the default for existing manifests. An empty custom_cni_namespace omits kubectl's namespace flag so manifests spanning multiple namespaces can be applied without changing legacy behavior.

Signed-off-by: Kay Yan <kay.yan@daocloud.io>

* docs(custom_cni): document multi-namespace manifests

Signed-off-by: Kay Yan <kay.yan@daocloud.io>

---------

Signed-off-by: Kay Yan <kay.yan@daocloud.io>
2026-09-02 09:38:20 +00:00

843 B

Custom CNI manifest generation

As an example we are using Cilium for testing the network_plugins/custom_cni.

To update the generated manifests to the latest version do the following:

helm repo add cilium https://helm.cilium.io/
helm repo update
helm template cilium/cilium -n kube-system -f values.yaml > cilium.yaml

The generated Cilium manifest contains resources in both the kube-system and cilium-secrets namespaces. Configure the static manifest example without a kubectl namespace argument:

custom_cni_manifests:
  - "{{ playbook_dir }}/../tests/files/custom_cni/cilium.yaml"
custom_cni_namespace: ""

When custom_cni_namespace is empty, every namespaced resource in the manifests should declare metadata.namespace. Otherwise, kubectl applies the resource to the current context's default namespace.