--- 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-30T16:07:02Z" 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":"f6354bb0-90a9-4e28-ae53-012fb7dc1337"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T16:07:02Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f6354bb0-90a9-4e28-ae53-012fb7dc1337 resourceVersion: "2514" uid: 64c0d490-f001-470e-8706-b5b58e8f26b6 - 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-30T16:07:02Z" 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-30T16:07:02Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2484" uid: 4de6cc97-034e-4028-a4e5-d778b7e1a244 - 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-30T16:07:02Z" 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":"f6354bb0-90a9-4e28-ae53-012fb7dc1337"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T16:07:02Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f6354bb0-90a9-4e28-ae53-012fb7dc1337 resourceVersion: "2483" uid: 3b412c54-be7b-4aa3-93ae-ca9998940b5e - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIGR40M7Ut7xYwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE2MDUyMFoX DTM2MTAyNzE2MDUyMFowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3CVstyx6Z9N4 APocREs03fOoNTNnthX0JuCMUW+II4AGNmDgd1kmawm7JebKAFh+tOJuymixCNiw +Ct127S44517g58UBwauB02KR5ptfXkcEBwq/Ijs5Q3H0EciOiHL7sXqSoxTP0mx BnuPPgERlFZ/etzekinPxZV5EA8ZapkKLPiA2Wjwb9M18zHGwYzHd/bJjBRYybJ3 Ici26hycB9zWLdz/9q9FzshCW7tJ6s63jujAiwN+tpLA9gFfJwfbSPu6phN7e2WR 3I97Wj+seNiSvewc11TadR+CyJd65rnZs6kY7PeMruAGdlI9fa6b4cnMz3FgoA9D TM5FY5zNxwIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRA3SlJnsN6OsUqwsLmZOKwa1D2JQwaa6+4b5zhBb0lDerG2DVs 4yYTvWBeLVtVkekOVbrKs3NjTxZmWPlKWm8H2zANBgkqhkiG9w0BAQsFAAOCAQEA v5xCOK41mEITtj1FWyJEkVFIf6P8fm4cAmxN14Sd6dPqToxGnlMIJbsONvRv3zls qlkBis7MoBgnNpcUxPiXQckgSQz34Z3uEYAj4LvmeABHk+TdeA8pNunbrqI6LRyB tTP1NcAcVulCrg7tDP8F/NShujvI7CulB6bSMNZ7ZEvCABhTmFjHpxovNZu13uQ2 1DBqE6Tiz3+I51QL73dartN5C8pj1myXmazdPC9Ye8le8WFUe1qcd9S9fPu7/egz u1mqa8aPqU/25LQK9Nzm+1je/qnDAXjRmA4jBcp+tu+4bpKouxcOBhY2FKsJmDtL Wdxp69SpxCqTDC08B8cu1A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIEUXeRH/ruckwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE2MDUyNloX DTI3MTAzMDE2MDUyNlowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AKOhoASnXBy7SSYuiSgq9FKZmXLgXJhOJQeYUFnV0qwkO7DmezcWvp1aAjDwwbLP g3GGrY+8KGyMOV9FlHtcZuzEk9eFslHU2L67QL51l6+JckEnUSTXB2+hp7HchvYJ sMHV5MkaSPOqjh7Q732152LlsBfRmnYuQI0+A3uv0+bLEFUrNWL0WbvZcYLHEPXw iVmf02VS4LBEIk07tYa7QReoMRhK8YnAIXdNf5wu9iCt6LAbOhBEois1reSmcuKe ZATZ0X0sQmh0PBuSO5pfKChBInwykFLoRpJeX/gXOwwVPfS0BdjXw711orX+h9x4 dt1LoU7z3SNhQb5xYTTP/xsCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRA+KGnPHV6drPSbtA8L0A+hrJkg6sLL1EQ4BRJP3blLwfyI/+N6TCah07M jzyTrecJJjyOf9CCYMC9Wbvfz91xcTBLBgNVHSMERDBCgEDdKUmew3o6xSrCwuZk 4rBrUPYlDBprr7hvnOEFvSUN6sbYNWzjJhO9YF4tW1WR6Q5Vusqzc2NPFmZY+Upa bwfbMD4GA1UdEQQ3MDWCMyouYXBwcy43YTljYmYxNWM5N2VkNzNiODJmYy5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAfDpCzMrKjXby N3dCiTxcmAIoaDxIdxujZE/aY4eGF4/ysP951CoSY79ZIl4qmz3xbtN5/xKxUGB6 0L9zn3q63Slb3RwJZmb6cClGEgVPpEjw2a6ehzIVmg6pCUyM7ZoeqDyXPRTJ+jlV TJvfXr5ejd3ar+4s1ep5be6hxqPpc1NT8ghIK5FtilNev65gC3hSzrLeEd0qu8JJ G6NWyqdsFIc2/EGlrJ8srdkzpUjLG1z1qNyJMnvpuKjcuNT0AIVK+ogKbUEeetoQ P27fWd93s/4mb0CKYnfBX6kBkzjijekwVBlUzTejFnZq0bydgHTqqIB/w3TURsmY ywovcOoYHw== -----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-30T16:07:17Z" 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-30T16:07:17Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "4101" uid: 31ed17a6-bcdd-4919-8e8c-70c23598e8ee - 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-30T16:07:03Z" 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":"f6354bb0-90a9-4e28-ae53-012fb7dc1337"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T16:07:03Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f6354bb0-90a9-4e28-ae53-012fb7dc1337 resourceVersion: "2538" uid: f12e96df-35ca-41e5-9515-45360967d582 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIICaIGGMkD2wkwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzM3Njc1MjAe Fw0yNjEwMzAxNjEyMzJaFw0yODEyMjgxNjEyMzNaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTMzNzY3NTIwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEjRnCZqKdVQ7BZGNXVrbP5CTDfey3Ovmp wbMaM1GO6iIsnTMxzOsiUXkAefKEgdmDwvnz7Wg2SYuMkkMoVPQokADSoF2vxrYD MHgURvijrTOtEcRE8RifOFu1TR+cJQa2W5VyAunMj6RrtcyYF554hpGsrilH2Sig Rc2LPK/DNc1PbwPgmOFQb2tEtbYKS2QPn0vWjSjNX3ndcrM5d3zrVUNv4tEVi+NJ 0GuYoOugJohm0KjZ2mXH0r+cwsISyr2UR64x6lXTokkOyKVfuUkEMuEcGGsnkvj7 MwLtwPZ8S+U5DwcIC7AEw12AK8aQ7HX4vPhkotewvjDXPXjIRSw9AgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSCM0j0 pijK4lLfoYACGzNP7R0+WDAfBgNVHSMEGDAWgBSCM0j0pijK4lLfoYACGzNP7R0+ WDANBgkqhkiG9w0BAQsFAAOCAQEALHTVs/47OhD9QlrOY5fbxMQcdj67yQGiZ3uF l52a9Dt8oXjAfYI8Pbl/Lc6smFU2hneGX8J9hA6ZnECJyUyHc9rNDT1Hr1jx8y0v SBXxjLJ93Pm8AecogoOu9vfKL58b4tTx1FGjLouVA5pJ2S4pxjC5iG/F0F5N3Zz1 4SRjZdYNbXUqocosdE8GKeoMV8D7Hv20pqkUyVhdeuMoKadM5rDq3bCbTj7zhHU5 rkJDDYITdzGEcF6gPtd/VeKZQ4rKRQ6OnTg3wb0RGvgx2lOppqti6+wvCe/jsIph ZOiC4PrFXS812H33r2GTdv6MzxH64yPzpvSz1PGSYypw4qzQtA== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-10-30T16:07:16Z" 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-30T16:07:16Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-10-30T16:12:43Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "6964" uid: bf949737-682a-49ce-b346-bcd2904eddce - 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-30T16:07:02Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"f6354bb0-90a9-4e28-ae53-012fb7dc1337"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T16:07:02Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f6354bb0-90a9-4e28-ae53-012fb7dc1337 resourceVersion: "2537" uid: f616562e-3e16-43c6-a6d3-9d9138cf0edd kind: ConfigMapList metadata: resourceVersion: "16210"