--- apiVersion: v1 items: - apiVersion: v1 data: cnibincopy.sh: |- #!/bin/bash set -e function log() { echo "$(date --iso-8601=seconds) [cnibincopy] ${1}" } DESTINATION_DIRECTORY=/host/opt/cni/bin/ # Perform validation of usage if [ -z "$SOURCE_DIRECTORY" ]; then log "FATAL ERROR: You must set the SOURCE_DIRECTORY env variable" exit 1 fi if [ ! -d "$DESTINATION_DIRECTORY" ]; then log "FATAL ERROR: Destination directory ($DESTINATION_DIRECTORY) does not exist" exit 1 fi sourcedir="${SOURCE_DIRECTORY}" log "Copying binaries from ${sourcedir}" # Use a subdirectory called "upgrade" so we can atomically move fully copied files. # We now use --remove-destination after running into an issue with -f not working over symlinks UPGRADE_DIRECTORY=${DESTINATION_DIRECTORY}upgrade_$(uuidgen) rm -Rf $UPGRADE_DIRECTORY mkdir -p $UPGRADE_DIRECTORY find "${sourcedir}" -maxdepth 1 -mindepth 1 ! -type d -exec cp --remove-destination {} "${UPGRADE_DIRECTORY}/" \; if [ $? -eq 0 ]; then log "Successfully copied files in ${sourcedir} to $UPGRADE_DIRECTORY" else log "Failed to copy files in ${sourcedir} to $UPGRADE_DIRECTORY" rm -Rf $UPGRADE_DIRECTORY exit 1 fi mv -f $UPGRADE_DIRECTORY/* ${DESTINATION_DIRECTORY}/ if [ $? -eq 0 ]; then log "Successfully moved files in $UPGRADE_DIRECTORY to ${DESTINATION_DIRECTORY}" else log "Failed to move files in $UPGRADE_DIRECTORY to ${DESTINATION_DIRECTORY}" rm -Rf $UPGRADE_DIRECTORY exit 1 fi rm -Rf $UPGRADE_DIRECTORY kind: ConfigMap metadata: annotations: kubernetes.io/description: | This is a script used to copy CNI binaries based on host OS release.openshift.io/version: 4.22.20 creationTimestamp: "2026-11-03T17:45:12Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:cnibincopy.sh: {} f:metadata: f:annotations: f:kubernetes.io/description: {} f:release.openshift.io/version: {} f:ownerReferences: k:{"uid":"7595f5d5-bacb-4bdf-a04c-0ecb2cbe27b1"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T17:45:12Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 7595f5d5-bacb-4bdf-a04c-0ecb2cbe27b1 resourceVersion: "2374" uid: 394be6e2-8fb6-419e-aef2-13030e39579a - apiVersion: v1 data: allowlist.conf: |- ^net.ipv4.conf.IFNAME.accept_redirects$ ^net.ipv4.conf.IFNAME.accept_source_route$ ^net.ipv4.conf.IFNAME.arp_accept$ ^net.ipv4.conf.IFNAME.arp_notify$ ^net.ipv4.conf.IFNAME.disable_policy$ ^net.ipv4.conf.IFNAME.secure_redirects$ ^net.ipv4.conf.IFNAME.send_redirects$ ^net.ipv6.conf.IFNAME.accept_ra$ ^net.ipv6.conf.IFNAME.accept_redirects$ ^net.ipv6.conf.IFNAME.accept_source_route$ ^net.ipv6.conf.IFNAME.arp_accept$ ^net.ipv6.conf.IFNAME.arp_notify$ ^net.ipv6.neigh.IFNAME.base_reachable_time_ms$ ^net.ipv6.neigh.IFNAME.retrans_time_ms$ kind: ConfigMap metadata: annotations: kubernetes.io/description: | Sysctl allowlist for nodes. release.openshift.io/version: 4.22.20 creationTimestamp: "2026-11-03T17:45:12Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: .: {} f:allowlist.conf: {} f:metadata: f:annotations: .: {} f:kubernetes.io/description: {} f:release.openshift.io/version: {} manager: network-operator operation: Update time: "2026-11-03T17:45:12Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2372" uid: 546198c0-d134-4d32-ad94-1d63e148a207 - apiVersion: v1 data: allowlist.conf: |- ^net.ipv4.conf.IFNAME.accept_redirects$ ^net.ipv4.conf.IFNAME.accept_source_route$ ^net.ipv4.conf.IFNAME.arp_accept$ ^net.ipv4.conf.IFNAME.arp_notify$ ^net.ipv4.conf.IFNAME.disable_policy$ ^net.ipv4.conf.IFNAME.secure_redirects$ ^net.ipv4.conf.IFNAME.send_redirects$ ^net.ipv6.conf.IFNAME.accept_ra$ ^net.ipv6.conf.IFNAME.accept_redirects$ ^net.ipv6.conf.IFNAME.accept_source_route$ ^net.ipv6.conf.IFNAME.arp_accept$ ^net.ipv6.conf.IFNAME.arp_notify$ ^net.ipv6.neigh.IFNAME.base_reachable_time_ms$ ^net.ipv6.neigh.IFNAME.retrans_time_ms$ kind: ConfigMap metadata: annotations: kubernetes.io/description: | Sysctl allowlist for nodes. release.openshift.io/version: 4.22.20 creationTimestamp: "2026-11-03T17:45:12Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:allowlist.conf: {} f:metadata: f:annotations: f:kubernetes.io/description: {} f:release.openshift.io/version: {} f:ownerReferences: k:{"uid":"7595f5d5-bacb-4bdf-a04c-0ecb2cbe27b1"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T17:45:12Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 7595f5d5-bacb-4bdf-a04c-0ecb2cbe27b1 resourceVersion: "2371" uid: 3291ff28-b488-41e1-8d74-a25e5cfd1011 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIJqc6tX3salkwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwMzE3NDMxOVoX DTM2MTAzMTE3NDMxOVowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAppWHh3NP1/fQ H9i89q8+EQ5+cIDF1JhcOvrDg3YZkuqwueijbpVgjCpuSCgC6juPgtTOqJVyP4z2 N9GhDt+ZywUzeBkhN2fnEBkPjOCDsDSKt/H+mFJROBHh/ruIh8jSLnqJdq7gpVC6 /F5PJBmZMAJ44/vNw3i/SDGI2E25gf54v2B7gUbBq6tm0YXG3/1O5wSkTL/ou/uo 2Xo0QVHpVs4U8WtBtoJsnBRhWz4yz1ktFfRtXLXCZeRNJEBpCsa06mdAkft7hCDA W4TG3spsKYoJMbYpWzRJmm25Ms1P36Id30MdCPsS2Ugjl1u+WyU2oFQPEKx1cjcE B4nefrCccQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRA3VhLdJowQTTwALD9lLtALFgPhEgZLWkxDFZAye2+fq4mD2Ef 3OkmvYJMNRVFzroBbEZ8zOYf2IZnAHpLfGnwzjANBgkqhkiG9w0BAQsFAAOCAQEA H9xTMLAjxHtumlJ8H+NmO1BSKxsbZXX+a9qH2VmKTx8pkrknDsn5ftJM72QclPrU Ej1vNXWebcGJWo+61FuUOKLE5suD9LSClBMsvIDIKFqNEh+L6e4Pa+1mAkzAlQkz SaLrZpdwFc/Z2eD7TYsbcfrT/vN7VXzFq+RdLKoE/EEYGhUY5fqnmIFErvNn0qwA 6492bDCX/+RiL6Qe2qqUAJ1sAdjLMYRJG15BeQ6LSL/Rhb+AUHuJTTkH/L7UkLWn ntjqjARbE1YmZ3rmrsXS+q2R0LaDbK/n3Iu2zIRFk7//L58Pzj6xROBXtYXBKJvO tluHTiba14ySFnTMPvx4Iw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIINY8rZd25ln8wDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwMzE3NDMyNloX DTI3MTEwMzE3NDMyNlowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ALypal+mPn+uOEkxctR2/36p21ErThVwqF8b+LCvCiaWRmMp/3/VNe1vtFJUoKw3 IvAPventjIUFEXtDGVNg82fvX3WqI5MEnlpbJMGOT6Oa77kVhJhNeiJ2na1RrHJI VBhDnrXvqSJsnmenrH4oVenoFu7+gmSlCyvNU/um3kDYFId8LMiaJ1oFup31mwVr DvsMErw1EmkuIvyki78ISG8ow2m5ii4XA0KpF2ALTGgk80TKzN5zseEeGJVZRtW4 nJRTO2lXjnbzGmKL+fFEyKSGaU+Ea4GzqgqEb0N+XdIQ9GH1ES6GkOmdlb/f74jz NGQaMF75z+B7476fNRBucGECAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAa5x4x+u1IuEzA4GiZWXMGcjRhQS5SQp3cFT+KToq3hne1tW8IvNj7Scb U8GGHchpwHoYnvahDZHEOOv3zxgshDBLBgNVHSMERDBCgEDdWEt0mjBBNPAAsP2U u0AsWA+ESBktaTEMVkDJ7b5+riYPYR/c6Sa9gkw1FUXOugFsRnzM5h/YhmcAekt8 afDOMD4GA1UdEQQ3MDWCMyouYXBwcy43ZmYwZmRhYTlhZTk2NGQ4NmZmMy5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAObCsS0YnX7it 9VtNWyyanHxqWb5b6oEX2uGBooYHxBHsc4+cR/xmabCagLEE+X2Y6aVCLE1eWZO6 wHCZSZlpinW4f6TuTqhkOjsquDb4C/tJFpBJgTOnDSizStJBGLUWxgoveKABuLvj FNFhsWsRaP8eIvt5ApwV3zDahr+cZQMl0GrDp7RbkGPMtnkmZhJ3ufwObW+SCvsh cvZ5YA0v59vT/Y9gh6gUnoLfTCH3ZhhYxR/1O/oqF6coStniFb988JAEaEdTKYKM LsZwSdVar52DCuIHlljEx+/CLBv1Fw5IAsfRJ4YrCHQE34GwsvU4ICY0XFe+UyaQ Lsl+282y8Q== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: kubernetes.io/description: Contains a CA bundle that can be used to verify the kube-apiserver when using internal endpoints such as the internal service IP or kubernetes.default.svc. No other usage is guaranteed across distributions of Kubernetes clusters. creationTimestamp: "2026-11-03T17:45:28Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: .: {} f:ca.crt: {} f:metadata: f:annotations: .: {} f:kubernetes.io/description: {} manager: kube-controller-manager operation: Update time: "2026-11-03T17:45:28Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "2830" uid: acb53b9c-4ef1-4835-9bdc-871b22f711dd - apiVersion: v1 data: daemon-config.json: | { "cniVersion": "0.3.1", "chrootDir": "/hostroot", "logToStderr": true, "logLevel": "verbose", "binDir": "/var/lib/cni/bin", "perNodeCertificate": { "enabled": true, "bootstrapKubeconfig": "/var/lib/kubelet/kubeconfig", "certDir": "/etc/cni/multus/certs", "certDuration": "24h" }, "cniConfigDir": "/host/etc/cni/net.d", "multusConfigFile": "auto", "multusAutoconfigDir": "/host/run/multus/cni/net.d", "namespaceIsolation": true, "globalNamespaces": "default,openshift-multus,openshift-sriov-network-operator,openshift-cnv", "readinessindicatorfile": "/host/run/multus/cni/net.d/10-ovn-kubernetes.conf", "daemonSocketDir": "/run/multus/socket", "socketDir": "/host/run/multus/socket", "auxiliaryCNIChainName": "vendor-cni-chain" } kind: ConfigMap metadata: creationTimestamp: "2026-11-03T17:45:13Z" labels: app: multus tier: node managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:daemon-config.json: {} f:metadata: f:labels: f:app: {} f:tier: {} f:ownerReferences: k:{"uid":"7595f5d5-bacb-4bdf-a04c-0ecb2cbe27b1"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T17:45:13Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 7595f5d5-bacb-4bdf-a04c-0ecb2cbe27b1 resourceVersion: "2380" uid: 7b6df6c0-ad61-43f7-b965-868874509325 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIITi71reXvDGswDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzcyODMzMDAe Fw0yNjExMDMxNzUyMDlaFw0yOTAxMDExNzUyMTBaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM3MjgzMzAwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDUB3OgpP4I5busQYd1QIU0ZA027NWG/8eS HcmbIBz+iwFZfjs23TNZmUoukjeEX20FVdAMCQa1JWULzIqnki2qZWN/IMwkSexY X3pmGh74kKKdozorU3cVyBxyowMNDj2CqzkkpW8wIAXECO1c4CYo9euBjN03+vEi bgBlXUOlkhs4hrui3uRMG0WlqQzFAC3EyDxwtKTNEonsN9B5clMbXPFhaLHcgAQF xVZnbZCdR+8iouVvcfSsFyF7Fly2+HjmEaaFKRRo3Kww08udxDJjcYmB7c0aEIMi KeaJvmSL3X/qhshokR+SYb46S9m5QHC0IKgxMnQ3WVYODWdvX1cjAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSpq8Yg wvDk4OWlor0bVSG3DH68hjAfBgNVHSMEGDAWgBSpq8YgwvDk4OWlor0bVSG3DH68 hjANBgkqhkiG9w0BAQsFAAOCAQEAOwZzSkQtgFz+H4Alns0ii23DlHPm7xjysB8H E8EcFgOjbkHm/WEN2QB/CnM1K9Pt/9Vyq46HDv0PkbFMw+/8KbgZVeQA/d5rHokQ TmsXlGtKcwmInPCLY9OsNUgHodJN2R8PLzZ29mVR1ju5Lb/AMr8AtATX3iYLPnp+ xG4sFk9eke5ONE6dR1M8OcfaglLk2YBOLRqpXz1IJVjg0JzuaLXYihBr0Wklti7Z FkLy/5LIgkixFVfmYEjFKKhXvP2cLH+zGLEfKG+rCQ45KGA1wXcZXbHn6LdulOLX lLYqZQmEqFazgup3Kh7l8YrkrHnrGJgjE5qI5KfsFU4YRBjsHw== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-11-03T17:45:27Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: {} f:metadata: f:annotations: .: {} f:service.beta.openshift.io/inject-cabundle: {} manager: kube-controller-manager operation: Update time: "2026-11-03T17:45:27Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-11-03T17:52:25Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "7068" uid: 56c02bce-4d9e-489a-afcc-234b2d9a1d02 - apiVersion: v1 data: whereabouts.conf: | { "datastore": "kubernetes", "kubernetes": { "kubeconfig": "/etc/kubernetes/cni/net.d/whereabouts.d/whereabouts.kubeconfig" }, "reconciler_cron_expression": "30 4 * * *", "log_level": "verbose", "configuration_path": "/etc/kubernetes/cni/net.d/whereabouts.d" } kind: ConfigMap metadata: creationTimestamp: "2026-11-03T17:45:12Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"7595f5d5-bacb-4bdf-a04c-0ecb2cbe27b1"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T17:45:12Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 7595f5d5-bacb-4bdf-a04c-0ecb2cbe27b1 resourceVersion: "2379" uid: b55c3e44-0852-46dd-90cc-4bf7b4ab853c kind: ConfigMapList metadata: resourceVersion: "13056"