--- 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-10-30T14:07:18Z" 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":"4b395e53-c192-4daf-8578-a49dc7513518"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T14:07:18Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 4b395e53-c192-4daf-8578-a49dc7513518 resourceVersion: "2507" uid: edbc818f-2b5e-4646-9ef3-0a01f74d3792 - 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-10-30T14:07:17Z" 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-10-30T14:07:17Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2500" uid: 562289a3-986b-48ac-8335-ff6ec8b5e111 - 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-10-30T14:07:17Z" 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":"4b395e53-c192-4daf-8578-a49dc7513518"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T14:07:17Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 4b395e53-c192-4daf-8578-a49dc7513518 resourceVersion: "2499" uid: 046afe44-ec87-4d3f-ad34-ed24949d305d - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIN1IBgN9zWBkwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE0MDQ1NFoX DTM2MTAyNzE0MDQ1NFowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1XlP9fRMzArO SZsfGNVONCn8lzdliRJVw8h0b6tOpGx13MrmTeHLi1crmL89LTTzeJBGaJnMQ6cI IbkHW3vYmAT5WuNH2QtFQp7kD8o6Y3QAlprH0trf41fIG23x0KBUI20lIHcXjD62 onk2NdtgdO4TLm5q411DdHV0t8A2KL8o6H+8Wmrbl3ZpYP8hhSNgWohE/gHF/Y8q eQikVTHW49pZlDa1ZnUWq8TiAeabXnOTDdvTcGWn7xTAN5YH/yg6+1Mad5mRd7z9 7LDvHZ72nP0w9FgjtiRq7VLxRKoJfM0mBBdG2HU+tHEh4I60fjlvIaZrxe0nKL2w jwgnq62wHwIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRA/raK8/OdnEURk5F2lb8nY8j8WsxLO12BelQpqYVMooK01rUN 0smRF1Gq5mFSGvEEp2QZ52Plb5beZI9tR4UV5TANBgkqhkiG9w0BAQsFAAOCAQEA epvHLdM7P+dGXEMWGWa91c7lwmAMoSMvzM61CgBumZegkU912c2zgPdLXgO5hob+ wCvsMHJ4jaauziT7NLLPNR+JpalWTXC3/NkUfpRCez35mUIIlpoUd9bnCeQqQQSO tCXXL9HGFSlPnChgLiIf54fLge+rile7lWQM5lnODo8kHQLHmgC6jzFojPZeA3u1 5n2aJCefZzXN9ZvflXeNPgVVBAs91xu8OK92tPCBcqpwDGruprkQ5vq5wpTWRVr9 qUF75JDzPZLWYAPnkgLLBe+nR/mdbkYxGBjByByzEI+12QGgQwXtwo5aHUYT9rfu tCZ1yPIEp5i/biybGy2mdQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIZAKI2/4fV+AwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE0MDUxMFoX DTI3MTAzMDE0MDUxMFowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ALqp9IZyaBAwFJxhN+MhyQ7uNHOHCY4Hb4dtCnwJI5FIlGNkFzh/4st63Ego5mNQ Rl7Ckdcko5D0h/Utbhq+Wvsq9+FLXys7jJ2h5m6tkqHIaiDlcZuOMsG4YbMoSmvj FuLgkUA0tFW5w7cqNCGOxaqK+QcxICszm+rADFQ9hufiOTDyfwQCp0wgWEal7HWA 0FkOe7ImXtwjbPB+B5IC3n8WK1gxE9mTM5y0JlvMdVGmL047Ue7uXAizCpSMx9ZS pVLcv3vKAJsoyY0ojymEKfZhLqV278QxTVyO5VpFCfQz8LJIVPr566l/4w0CKAAZ mC8LnZ+6RYtfm1XdWMwaWZkCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAow4xfcTlHxFPLIAO0bGXkOgF2Npv5W7q1A9sbzfhZFFg1QnnclofomAM 9Wg7fTWr1YCr+BAyFnb1qhVfEICGiTBLBgNVHSMERDBCgED+torz852cRRGTkXaV vydjyPxazEs7XYF6VCmphUyigrTWtQ3SyZEXUarmYVIa8QSnZBnnY+Vvlt5kj21H hRXlMD4GA1UdEQQ3MDWCMyouYXBwcy41MjNkYWY0OGQ2MGQ4NDVlMTcwZi5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAuRhAioU59u/F cY7MPr/k4MnRNJBBDqtYy4Vi6tPtm3AP/4MUs1ikiLrz035oG6pA1YzGUkYF3d8i z3VilmcxPXANU93mEjz2jJZpPQsagZBrooH2mNr8PpWcOsSd/cR2/0HoOW6KHXJA 5ccqIG1DJOJbLr2rTk8leQhnDP6F47QhZQzvTwLFrZnk2Umw4yD2XxKm1Q99YdA8 YZzmMriS556gSOOsKhxs7h8R/t0WChs6Ar2LLumnhRP7VHCf3SflGerPc+i0XcBH 0sUWUch8PgnmgWITThSzB2eg+0oQM2PIdjMojplaYXgiPVZaEWdFi2UP3TSlp1un 75VzWXDySw== -----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-10-30T14:07:25Z" 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-10-30T14:07:25Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "2867" uid: 89c0e543-8683-45c0-885f-1d051ecb21a3 - 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-10-30T14:07:18Z" 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":"4b395e53-c192-4daf-8578-a49dc7513518"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T14:07:18Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 4b395e53-c192-4daf-8578-a49dc7513518 resourceVersion: "2518" uid: a8c97664-5f52-481e-8bac-a7a19f12fbbd - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIKqwyWjWKrh8wDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzM2OTYxODAe Fw0yNjEwMzAxNDEzMzdaFw0yODEyMjgxNDEzMzhaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTMzNjk2MTgwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDAaqbQw6lJ5fCrLo0P5CJlyfrFt0/d+tpq hwtxSfwbNS01uJcmLNhTc4ABwD997XnTmx5UzpbYHnXrxPKDVIvqQm+Pk43uY1lm 6AMtR07zaYL8B8Lk5iOSRqN4s9LeMS7VMW26HKjvq7OlrDo7T5czM9AoB0V6AZt1 eCXtmXYvjz56XYYihfCNlXoJNi26z8isbcZzKjUqCPx5FrmCC7XkGbqCGZNF1oRe UuulMLcgVtR4p0WMA+goltcjMmVVYAmZe/ixLHbMyV05ROhB9SgIvzUC1FQNahb5 Qskq2P4nV79tKk90bbwuWheKcvBeSQEy3rsLUa4Wbu4vhONRxRfzAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSvMN+i MIw4pYJTERAAPZmdZzbqvTAfBgNVHSMEGDAWgBSvMN+iMIw4pYJTERAAPZmdZzbq vTANBgkqhkiG9w0BAQsFAAOCAQEAFqmLOCLfxFc5pD7Whbg8Ilb3gSmIGxyJz/Kf CjRX5s83l7oq4n0R+kfPqKWhuh/GiyJWGEHlh4DeiO01vFO+FpB6LC/AhcfK3cgk cbGdGkA8AfAFEpZ6ND6kDuYjaNQQ2w6tD6XDVf0dFsHSt60R6VzRGmqzLLCgZgPI nRISNbQD+QNb6KFUkSEBUDbnOtCYmj2G9p6xeAGsGfegz0l80rVZxrHX0ITEuZRb hD89bzyUJ9917HMmfZB8c2VHctT7cVNgz0KbMyYH4xyYyHrte13RGrr9VnnzX6iF yeIQhXLpyqmSx/UtBhropxtIRE/ddXYB54ocPuckMgda/ggPDQ== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-10-30T14:07:25Z" 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-10-30T14:07:25Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-10-30T14:13:54Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "6896" uid: d208fda4-c40c-43f7-a170-bb6bab344e1a - 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-10-30T14:07:18Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"4b395e53-c192-4daf-8578-a49dc7513518"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T14:07:18Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 4b395e53-c192-4daf-8578-a49dc7513518 resourceVersion: "2512" uid: bb409130-5d20-40ee-8453-6153c86de431 kind: ConfigMapList metadata: resourceVersion: "12551"