--- 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.21.32 creationTimestamp: "2026-09-07T10:54:59Z" 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":"240ea5c5-85ae-4b13-9528-63d05e53f317"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-07T10:54:59Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 240ea5c5-85ae-4b13-9528-63d05e53f317 resourceVersion: "2432" uid: c0bb28f8-05ac-4ee3-96db-fcb7e3717d21 - 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.21.32 creationTimestamp: "2026-09-07T10:54:59Z" 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-09-07T10:54:59Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2425" uid: b19c7f17-ef2f-4795-a5ff-67173c6e9408 - 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.21.32 creationTimestamp: "2026-09-07T10:54:59Z" 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":"240ea5c5-85ae-4b13-9528-63d05e53f317"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-07T10:54:59Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 240ea5c5-85ae-4b13-9528-63d05e53f317 resourceVersion: "2424" uid: e19aba31-0e0b-4c0b-8917-51b807e65fa3 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIO4hZqkFlmu8wDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MDkwNzEwNTIzNloX DTM2MDkwNDEwNTIzNlowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuZH/ufIQQF2I 65Vp7YWnu5INKu4iA2TOfrcI7q75weB53PzhVn+kcUlfjOTBdiyG4+35VaLFsB8q bCL9UnMu3BHD9+VUQCYo7IrzaS3wBfHGwGTxXJ4TknH25jDLLwt52UX/6ujxl5yg eItMqkWF4ohr9Vfw6h0C+pTEmXXdSgIhLFFzIfr1dF46z/ST9J8y/gbWbjtAt85Q dydOiGgGfkZruCzr8JDUUgT3YyC8USIlf0b/0MdAzZXHZh/I3PVlOpI3G2SeNKyE UgI4sB34rfgykc6ypdAGqLedkwvsIJy6oyvBmrR7enDIBaDcpXUaOC9nh2Cb4Sw+ l/2oqGoucQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRACXXJEcQb36Xlk2SeZigUmCFxbTLaNsGi2n+8qCerJB8m4VWD MdN8f5ul2yzkidBEU/7fvOPOWGHbGswTafGvDjANBgkqhkiG9w0BAQsFAAOCAQEA i0e0xoU+2I9e7HjgWpijfcCLa2PN5ZabMSLb5oU+1mP7fH5vz3gmdCpWxsUGGGL9 Io+JPL4lvwHXnAwRbafnpaRrhust0+kHLeL9orcB0L//iEnscmcCXV+IFjendJ3T g33HU76iOYVhuSNLwXYVq8bkcw/HCMGmeAXoFtn0B4vws+SlpX9qVJli0zHtaFQs AhYl4AZEfoyXvNqIRctgpzJJTsK/Ot4e8UwcIkoyDhMKKG80MZCHnTxkY9FLU46n Z57h2STdRgkUPBAKm+QpUZlxOgAIe9/n/pSYWL7PoGMJqBOFhQ5YWhqpfe6SPuig J7EzSrsdWBhObVVq4yCFmQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEADCCAuigAwIBAgIIIC3KDGlP/hwwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MDkwNzEwNTMwOVoX DTI3MDkwNzEwNTMwOVowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AL3IyerfvJTIGesNtEUjWTDFfrKnja0wyDhIVqAoeLI/PqUbppz99d+hi1b6XKrD OAtzHmK00tUCUWdYmaB5MvgycCCIxhI+0tY3JCBAIXPiOcALw4v563OLxWMT7RN8 E9ld1FcB35bButNch2TcOFElbh+y0LIoSMc6595KsD7fiRobHhRy9AnOVhynNwUC 55wsYA451VHSpomxZ4Zeok3rKaR795BS3dihEg2sHz6ZxIPe5iI0T2syRAEUwejQ xDl1Gd7moYDSDMrbTowsX8WbPbVdT9SmJBlQswI013yh59GmLxoiOOgI2N58oRmn YoqQw8e+nJGevm7XI9E5OnECAwEAAaOCASYwggEiMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRARwyD3GTlCyKahNzZUiGYI13TkyrkfUfvTex0T4mAGLijfGaLJWUuBX7z /MpaQJC7ukYoaTOhNRQscFPMmnvyETBLBgNVHSMERDBCgEAJdckRxBvfpeWTZJ5m KBSYIXFtMto2waLaf7yoJ6skHybhVYMx03x/m6XbLOSJ0ERT/t+8485YYdsazBNp 8a8OMEsGA1UdEQREMEKCQCouYXBwcy5lZTkxM2U1ZS1mZTQyLTQwMTQtYTQ5Ni00 NTRkN2RiMDZiY2EucHJvZC5rb25mbHV4ZWFhcy5jb20wDQYJKoZIhvcNAQELBQAD ggEBAHZhENil7svJpC78Dv1Fv2U/Yy2iH8EsPCUE+4j4UI/v4AvQj3w40vW7tCnp fo7pvfnntjCRpvfS9TViRQI05L7XyjRvr52PPhhSeoUPVs8S3t9BO6qiDn9onCeI syAapz9iWLQPcSgSjB0HXYrI5INRzyYZci1GWd4JourVXpZNUY1iks9sk22IgUJj 9+YHo1OC+aYoi4PWW+QmQu/ja1KaOj8/8bamIv1fwYncW/+3AWXjggGCut1DO7MP aWEZrT4QaAYO77gaweBbwH35dmSaOVi4M0Fx3GxFGRIdWoAxxAOlQ1qG3XmBVRFN QCqqt39ZZd5Hz7Ed/BjxXiv+5EM= -----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-09-07T10:54:56Z" 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-09-07T10:55:51Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "4424" uid: ff638567-46e3-4424-a413-c846c95c5441 - 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-09-07T10:54:59Z" 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":"240ea5c5-85ae-4b13-9528-63d05e53f317"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-07T10:54:59Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 240ea5c5-85ae-4b13-9528-63d05e53f317 resourceVersion: "2484" uid: 971aade1-3327-4865-a9ca-16e50574c14e - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIQUuKJUtdFLIwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc4ODc3ODg4NTAe Fw0yNjA5MDcxMTAxMjRaFw0yODExMDUxMTAxMjVaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3ODg3Nzg4ODUwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDOPXaPB4LYfPbi5tpyLFQ4jWRizElEAjna lnRHI8WkGwtS/VNMI/TJKNDMVRIzzx8FsT+m/IC4+UvwYTS44t99eU89HhqTK7V+ nr7rUvt2rkPND6zcmDzXYoRJ764D37avqEKdDug6cv7zgW8ZIQEkTlUCJKbRxd4K /0/JdkCBcOxQJctft07WuVoSUxmCkGm6rGEwFpqoMsQQONdeu35gEMejmTZIPI9q ki1gTNJPhJQv74h83UeIjWxQ6CoQH+KaHjs77/zVQ7mVPviVQC2GsHVG+hz66ldH Uy4NqPm6XOHypn/ybgTLCjJ0eTCj+u1Oz3VlbuIrIuyqqH6AMEjBAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTQLjlQ 7mwCFduxpWxGbx7pvf6XRjAfBgNVHSMEGDAWgBTQLjlQ7mwCFduxpWxGbx7pvf6X RjANBgkqhkiG9w0BAQsFAAOCAQEAvMU0h1moLkWQ4qy+7j69ZzrT523pXRKn4ewx RdX9sxso4BAg98Hul6g3TWb0Jy8mzNQdwuokCcAHGfDLLUuKQwuK2uf6kF/2mQ5L dmUDjmf39+KcKrxX6/E4084bpZYoivvQQe5zZDfKAeSClDtuNJUc71W+drLJoZT4 +0ESWXxdcVqPedNYxufGhRCsX5gsOfVkGuno13IO2Laf3QLypAu3lijLLhQSgfMs 17RX0aeoPDgKxnrtgpMp33ndm7C9WGxoQEYnudwUe68oZYUGAUQc7SEoUkGa/+Tb +EKscwM/chAhQ9AtJ/vOWWsw+UUuEzsVaH8wVwOnw35eNLbEKA== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-09-07T10:54:56Z" 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-09-07T10:54:56Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-09-07T11:01:42Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "8239" uid: f91cca92-4b1f-4b07-b3d6-bfaad0feb30b - 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-09-07T10:54:59Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"240ea5c5-85ae-4b13-9528-63d05e53f317"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-07T10:54:59Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 240ea5c5-85ae-4b13-9528-63d05e53f317 resourceVersion: "2466" uid: 488d2b04-d542-47c0-9dbd-168bc825a911 kind: ConfigMapList metadata: resourceVersion: "25413"