--- 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-04T09:36:50Z" 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":"2b3e2222-4956-48aa-b23d-d632b8685133"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-04T09:36:50Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2b3e2222-4956-48aa-b23d-d632b8685133 resourceVersion: "2718" uid: 5567e924-babb-42a6-bff8-9fa18a713c0f - 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-04T09:36:50Z" 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-04T09:36:50Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2715" uid: c60c1b35-e9b3-436b-87e2-23b75123d582 - 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-04T09:36:50Z" 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":"2b3e2222-4956-48aa-b23d-d632b8685133"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-04T09:36:50Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2b3e2222-4956-48aa-b23d-d632b8685133 resourceVersion: "2714" uid: 9679606e-cab2-450f-b375-aa983655f92d - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIc73PozfUaRwwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwNDA5MzM0N1oX DTM2MTEwMTA5MzM0N1owJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqEzLZknkdrmS IYw0zclvFymX5wvbqDS8PkUsma2ckdDQJs24nzggdbUv2yc2MV3TDqAx8FBprCvS lacLRtwDKlGuXPZ+oFLK1O3Hkn8Xa/geuBHkMt2goeE7kN9I1MYkJACpHmxxdD6n DXqqaD0lsIZ0aNIn8YOtWhIlxVxSRIiywbVw3GiehSf7TWI9YN3Hbvr7C2/DM6/G cBObNnltbRxg/s3NXLU6w94NBxIQd3zfacNyq5J3/FiXtFFTqCuxUU9DD5ngWG/n w/Zu1rWk9RapQEt2h9EObHtbFVvhTzo8BMon65qy8zkUl2FR18Zhj3GEIsV0UJMC i50fCAIOswIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRAYMRCu6l1N4VXG+8mcThkUEdIxzcS0Syh7kOrVB9v90BHuAZi P6Dt3lxmFR2XnW7uUoFWxqGgttKLof9khpF6UTANBgkqhkiG9w0BAQsFAAOCAQEA ZQXtBdjH19AssUw5CRnMhlc1mttC5oRk2sX+rkoMKYKAg8q3gob6XpGeen/W933Z DQgjt23qtqL4sAEFWEt329XA5awc7KCEzbpAHLiXvPQb2VEmCsD5/U9wHq9BRMZ+ Xvy0x65nJRuTbFzQNcaYsF6oj62AQxnFLlW/l8LJpLEBuQZ2U7C23LthVeNJDPwL WkCBSrfYBgO6VTcyX9hkGSXMXyrdLwryYTIwQRXmwWPq3LI8hYCDxWz71U0oPu2n iSNZV8qmTXeVEj6ZQkH3MwZb0zmFYpHYtpEraBaEp3Lp4y/9HpA+Zsv+RVTCUE7u VtWcpbA2Vpt3nOcaHKDqJA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIbtNn+A8L6DgwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwNDA5MzQwMloX DTI3MTEwNDA5MzQwMlowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AKKKA0f1vABhe7uyIySSg3XjDUIR7zRdRLgVdjjwsORzIDjIv1phUjjqsilArHg1 zPrWY2fGZO+J5OXQ9SJYUBfjaIkGw0IjxBj9n3hlnHm6pHnoFsDmFJzsXYGDEvYa q73sTo35ym70q8sipyH31DdkKcnHZVFc46bccWwdCWI8Fi4B1G9DtUlOgCcuyQDe M5ZEDkHSEB3WQ5cH8UVxX6L23i3QxgIfCCfDLHZOhYWV4eIUEuCt5uKy2uopnSNd OVuEZHK5EeoY24bWi3fEvWHCScC3g0uuOknJn3FuGdELD0ygkFtkfu/00NkFa7P0 p/tI4EI18IhmoUb+lhZuOrMCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAPCqnRdavSCFJobK96QI2+pLfI8d/6ba3nSZM7GTMmv78cCORYklQEjoF CHCKNBYoQoycZ/ScXR6ilEFMjN3A7TBLBgNVHSMERDBCgEBgxEK7qXU3hVcb7yZx OGRQR0jHNxLRLKHuQ6tUH2/3QEe4BmI/oO3eXGYVHZedbu5SgVbGoaC20ouh/2SG kXpRMD4GA1UdEQQ3MDWCMyouYXBwcy4wNTc0Y2Q5NGI1OWQ4MDhiMDZhMC5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAVs/C65cB5PKb 6LfB+tj1TBhZERkE/2u3OB0PVN/ZWXmKPde7L9/dxu2jD28jSeXqHnPk5xBXH7Fm Ew3ePPbwFYMdITRfSJxsAoeyqcseU+AxSV+ZGrW3WQyFXy6uUKtUTNubXqhEqvnn 9yeIdmgAb4AfY33PxqneloiU33KAwh3nMjcSXjA4D9osk+RsXYp1IFBb4sVTZ+Y9 /vt8O+nozxWfaDO9AXYm6UpqyTYt+sJAgHH181EmBRnPVIp6826uBqMIUPgbFOPo pM4DLXpaxAIEWYOb7Aek8Mgvj5gr//z0VanncBmWg2wM2OC41U3mEG6UFBbc/Lvo S1eDQ2ckrg== -----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-04T09:37:05Z" 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-04T09:37:05Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "3988" uid: 36524ee3-ac61-470d-a48a-971c213eaa85 - 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-04T09:36:51Z" 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":"2b3e2222-4956-48aa-b23d-d632b8685133"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-04T09:36:51Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2b3e2222-4956-48aa-b23d-d632b8685133 resourceVersion: "2721" uid: 9fe52324-2709-4bc5-a1a6-03812f26869c - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIciwF7v0yeXswDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5Mzc4NTM1NDAe Fw0yNjExMDQwOTQyMzNaFw0yOTAxMDIwOTQyMzRaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM3ODUzNTQwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDux360p5d0kUbl9g5A/PkJFawCTH3d+JS6 f9RI1FvtfEbtml+vQuCHAGH5bwSch997BKtwUshmROQhFx3ROjvdtmyLKsNrda+7 KR4yEJ21zkU4nM+Y2x0H7qh7/W7fQH1i5MJrrCjRHlbw17X3O8ROitQpGH7aXshe EbhRDuai6OvtlmIciuqH5NfGGNQBDXphvHwAqBl2HpFMjaqmt7pNYBH+J0YHIAV9 sstK45PGqBycWnMmq3ABfoGR4TVx8YbfJqZJndpvhYIgaBewpDdXw5zw1Bcbp4Ww cWI3ZZo9NnhelKm3MyE1HYVGasRPb1e1h/0Cr/IKapII6GHbzL1BAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTMOd9p TGhYyH2W7H+xUFBKuIJ7QzAfBgNVHSMEGDAWgBTMOd9pTGhYyH2W7H+xUFBKuIJ7 QzANBgkqhkiG9w0BAQsFAAOCAQEA6lWbMFd6XpfduAt9sAXMnFTnvbNdQ7u7jOYH InWst+zuW39B5rHaYl5GcKbPAejCucjw/8zU82cEjUfyPW0PrvPD8okOFeka66RQ iYdkRuBWduMQNT39ywMrw7bt0MvmUSa65HqA4CkiEjBLUQcXKSl1P+nko5Y2cbfF rDGzlJ0m4CD4LjCrLeZ6b1btIVY2bhezXQgVmGMd+fJ7JxfXL6Eugxw17jskNyvG 6plRW1+JNH4Qayqz0I4itlQ/zVDyJ6G8m40nvgNuK//ItGN4k7LWxCxOPVoDqwjA AxignTrG/wfgZ6SO6304KtPARK/+YKU9ENzHwc+Qv5uvpUGGuw== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-11-04T09:37:04Z" 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-04T09:37:04Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-11-04T09:42:46Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "6966" uid: 724623bd-597a-4252-92f1-ca5d1c84d5f1 - 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-04T09:36:51Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"2b3e2222-4956-48aa-b23d-d632b8685133"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-04T09:36:51Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2b3e2222-4956-48aa-b23d-d632b8685133 resourceVersion: "2719" uid: 41ab98df-7bbb-410c-ba07-d20474fcfbbe kind: ConfigMapList metadata: resourceVersion: "13481"