--- 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-02T14:50:42Z" 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":"fc24e233-378c-4381-b1b0-8eb7777e252a"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-02T14:50:42Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: fc24e233-378c-4381-b1b0-8eb7777e252a resourceVersion: "2383" uid: b29c246b-ff9b-4e7e-9605-a429043fc4e2 - 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-02T14:50:42Z" 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-02T14:50:42Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2379" uid: e049cb76-721e-4774-bf80-1a7e64afc4db - 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-02T14:50:42Z" 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":"fc24e233-378c-4381-b1b0-8eb7777e252a"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-02T14:50:42Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: fc24e233-378c-4381-b1b0-8eb7777e252a resourceVersion: "2378" uid: 8fe0b1b1-7fe6-4268-a011-b273518e11ca - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIB79RtvPvs+YwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwMjE0NDgzNVoX DTM2MTAzMDE0NDgzNVowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzUAOaGiWPHvN v+UURJXDMOSHpVmWD9lJF+Kg5Zy/NiNOahDWhu9UN+BWmCxzFyQLmb2u7pAnzsFZ ij58cHmj30o/yKRhczt5uySgKLIN4os13UMG2ZfDp906nKgKiPb7zFp9aW0r/X1E INbW528AViYnzqugoxw+DYLjbL8i1lXNBUp6ifgcndw1WyuMVHFIDMP6Nij/Bxjy InEf3croEvsZSxp2zaWy3WT1yGio2+nWIZBFgVN4VXFr17FbtZSGxWE3zgvRwvUH SrIBWaHk75siquANIuXQQVjZ/IRYlMrtQJ5Pdy86LtHfid2VuBufbFiimESapIqY v2aEKVyBSwIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRAMWGAkL6a/6BN0CPdgetFkcLo6ggdPd251Sw3gHe6FraJHSKh 1rAc9aSoQWtWH4HMV88EchM0KS5+4ehEdgirIjANBgkqhkiG9w0BAQsFAAOCAQEA lGZ6PR0he4pcBqJ1Rja4LZblDRZQckE2m2pXsKiNd9zWAUsfotC9jqVbv0EcsHSD e04gamur0QRwR0LbPRQDLlny9zpCigU+j9QWHRN7b4LV2D09cMee1CJYVxXtJK0M LHQ1O08NOKFq4Y1//Na3DeTA5ZlItYGy5sYpr4D/hT6tNwGJcMFNvy1jnUmP4M4K bcsAXwP/MKds+wmxv87UeDiXDAtQrnN4K8ABwwyhdJIFiQuvc4F8Aqf/WR7PERrk srb5qQI4AbxHmQV0x3srIoLr/2cjPKMmzOAXh8ZR3VgmYCUc/s6hY7TeQQCnds9O tlVPVlHpkzcVLGVCKMQJpw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIcMKTL5SE8NkwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwMjE0NDg1MVoX DTI3MTEwMjE0NDg1MVowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ALPj+Ji2XxsJ/AiCERc0ujEsxPeoACOfE7hRNoSk/aaKru5WHIYtvWLSfwl4VRdF RVyEwiRPTdsHr3ycsRMvV2R+SelSYU26pRhEWewCUWvLIWRQE5Ex2iKnVQghdXFp +602+XuAV4wRbAZs/lyKxvpPTdzMhiSEW7bYU12Xs35z+PRonwO4/W03WWAXgJpd R6aepHYBVPAcBN5R2ZLzAiniQOLS41aXralVYhE2lvgo6ts5uWJA7JiGbgEWwohM DLYmiMSlsrU29Bc/1EWaYo3aYMM+y1gfsV2HWuc/ACEpWBdP12RgRvCQMNNvyQ5k rV3k/6c90EM8HsG0s5QM93MCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAn63f71Y0DNfwjrRzch4ahTXYVQTJ9/jtg6EMS0G2goyggGlc9UpGmpJY UplpSMzWbnspGQ/nqbfSc8/8Xn97jjBLBgNVHSMERDBCgEAxYYCQvpr/oE3QI92B 60WRwujqCB093bnVLDeAd7oWtokdIqHWsBz1pKhBa1YfgcxXzwRyEzQpLn7h6ER2 CKsiMD4GA1UdEQQ3MDWCMyouYXBwcy5kZDUwNTQ4ZGExN2JlYTg2NmMxMy5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEArJhFAREvYM94 zDSGdretufgCOJYuYZgIjYs6NwMZRal3V9XbsPUxbESsGVE3nSwlervaBmoU3gBE CASAh/LYAYpzymLVxpZRD6RyCOyRc3xBehMcKMjdx5FVXAJkq2ooLvLBnKJHib/S GEeOw3N0xIuYAWlslpYDbvYVXAjo6+5xVK06R3J1Ay0kGqhHVjml0zyudnwFjowt qc6s6zeQYsD2xnSMVpca79G7eyuCTWN1vi/TjMMfxHWGCTVw0ktCtFhDddnSDFpS fB2BaS6H3x6vyu2OXkZT1dmEuiy/FXhr4K107ScKOFBPS1xO2leefG0YYFOtsz6K jCQmPy1L+g== -----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-02T14:50:54Z" 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-02T14:50:54Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "2621" uid: e5237777-ce53-492d-97ee-de7e5b2fbecf - 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-02T14:50:43Z" 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":"fc24e233-378c-4381-b1b0-8eb7777e252a"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-02T14:50:43Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: fc24e233-378c-4381-b1b0-8eb7777e252a resourceVersion: "2387" uid: e37d94e0-671c-4ccd-af62-ca51f7d651de - apiVersion: v1 data: cabundle.crt: |- -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIa8UoYVaHSHkwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzYzMTQ0MzAe Fw0yNjExMDIxNDU3MjJaFw0yODEyMzExNDU3MjNaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM2MzE0NDMwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDXLqAOOvIBrNRVHw2NZq41F4DUEjewpgj/ 1GHfzyQ5FAhrPHL6yEUMSZBu8qZFtALtLOiWHjzjTOnl0Z2Hwgxl6SN3gHIw0c11 0vGEaASyHo8wamEPGe2VplG+2tJLVB1F3UJAbb7ExOa8Jlp5Igkov6mluLzEgz33 65dtO1xsLQwFbJoS69fkMS1s1ai/jIuS9gXnBUd48MbsT/2NN2uNd1DtjknJNIXc +mZ9OXvEapviQajoj+z1bhAyQHw/AAl+3w+tVyBVWrs18aeluYqdV/wCHXNeAiDf XLlWwc3rmEW0CBblqm/3xhTJH5nRjSYhdcr+ChPdjawBPVeeZuAvAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBS/MM+1 oF6rTilpvda5ywvo3GTrjjAfBgNVHSMEGDAWgBS/MM+1oF6rTilpvda5ywvo3GTr jjANBgkqhkiG9w0BAQsFAAOCAQEAtcpAQ2VNTtfi9hat1UVrIbC9lrhjTuAO5Lg0 LVzLXsp0YXPlYQlJ19gh7cZCt/xM3dLP23kVYqMltz9N8fzer/PFxjYwqQpXSCY9 +m+oDyPam8RDdmQQ3WUGlVaWTUIneJ/5F/060DeOxYgt7lcAwbqGeSW7RU2FeYIa oOLwhNamEzjiLq1oaby7LoaX63y3zH1rRkbctwuosmtUBKXcUxkrSiHEq6m8WEBj vd7Y1HigEdOhtVwHE/noAw36m7KFl8jr1fGZ8SE3Vf4wGxcb8fTsyQ1+UknM5sJt OW/Wld/NFnszaAcA5zSTqfk0CpPDiUNZjjGp4bfb0GrseBF2yA== -----END CERTIFICATE----- kind: ConfigMap metadata: creationTimestamp: "2026-11-02T15:07:31Z" labels: opendatahub.io/managed: "true" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: .: {} f:cabundle.crt: {} f:metadata: f:labels: .: {} f:opendatahub.io/managed: {} manager: manager operation: Update time: "2026-11-02T15:07:31Z" name: odh-kserve-custom-ca-bundle namespace: openshift-multus resourceVersion: "18227" uid: 4c3c0a88-0ddf-480d-96e8-dcd0f4b219be - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIa8UoYVaHSHkwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzYzMTQ0MzAe Fw0yNjExMDIxNDU3MjJaFw0yODEyMzExNDU3MjNaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM2MzE0NDMwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDXLqAOOvIBrNRVHw2NZq41F4DUEjewpgj/ 1GHfzyQ5FAhrPHL6yEUMSZBu8qZFtALtLOiWHjzjTOnl0Z2Hwgxl6SN3gHIw0c11 0vGEaASyHo8wamEPGe2VplG+2tJLVB1F3UJAbb7ExOa8Jlp5Igkov6mluLzEgz33 65dtO1xsLQwFbJoS69fkMS1s1ai/jIuS9gXnBUd48MbsT/2NN2uNd1DtjknJNIXc +mZ9OXvEapviQajoj+z1bhAyQHw/AAl+3w+tVyBVWrs18aeluYqdV/wCHXNeAiDf XLlWwc3rmEW0CBblqm/3xhTJH5nRjSYhdcr+ChPdjawBPVeeZuAvAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBS/MM+1 oF6rTilpvda5ywvo3GTrjjAfBgNVHSMEGDAWgBS/MM+1oF6rTilpvda5ywvo3GTr jjANBgkqhkiG9w0BAQsFAAOCAQEAtcpAQ2VNTtfi9hat1UVrIbC9lrhjTuAO5Lg0 LVzLXsp0YXPlYQlJ19gh7cZCt/xM3dLP23kVYqMltz9N8fzer/PFxjYwqQpXSCY9 +m+oDyPam8RDdmQQ3WUGlVaWTUIneJ/5F/060DeOxYgt7lcAwbqGeSW7RU2FeYIa oOLwhNamEzjiLq1oaby7LoaX63y3zH1rRkbctwuosmtUBKXcUxkrSiHEq6m8WEBj vd7Y1HigEdOhtVwHE/noAw36m7KFl8jr1fGZ8SE3Vf4wGxcb8fTsyQ1+UknM5sJt OW/Wld/NFnszaAcA5zSTqfk0CpPDiUNZjjGp4bfb0GrseBF2yA== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-11-02T14:50:54Z" 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-02T14:50:54Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-11-02T14:57:26Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "6927" uid: 1cb4da1b-8022-4f86-ba60-b284b40afcd5 - 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-02T14:50:42Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"fc24e233-378c-4381-b1b0-8eb7777e252a"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-02T14:50:42Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: fc24e233-378c-4381-b1b0-8eb7777e252a resourceVersion: "2386" uid: a9f076a3-39c4-48db-b537-9122e8f435c0 kind: ConfigMapList metadata: resourceVersion: "113486"