--- 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-04T08:12:07Z" 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":"f9ae5d24-9548-46d2-a519-00d304e3d97f"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-04T08:12:07Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f9ae5d24-9548-46d2-a519-00d304e3d97f resourceVersion: "2097" uid: 0416f8b4-c462-413f-b5a7-8819321ccfab - 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-04T08:12:07Z" 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-04T08:12:07Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2076" uid: c3949966-32eb-4302-ac69-b3d8c2631fa4 - 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-04T08:12:07Z" 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":"f9ae5d24-9548-46d2-a519-00d304e3d97f"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-04T08:12:07Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f9ae5d24-9548-46d2-a519-00d304e3d97f resourceVersion: "2071" uid: 47bd06a3-9886-42d4-9d78-f0543ca61a22 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIISueyA8St97AwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwNDA4MDcyMFoX DTM2MTEwMTA4MDcyMFowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx83kDqjzXLM3 gA3uuC1sWtxihucSyhMgee38VqrJBpReum7h01jgaTT1jdsxp49sOssZylWZuy7d JiVJeNmIdx6c+gRRYgyQ99jodb/SGdbPL8Fw45bEPPjESYg3dvr/vIZuYB3Qf38o ZgD5Yrj5gp/FrspFBGu5McQVg6qwaL1VFMW8liSMWvKkBK3aEW124qiHg1mI4PUX akHtb55gnUgimC4qSlZVYtzoexv2hcFM9pQlf85ZVkzHK/MNbl4WwkDGzBl4GIkm 7wMsuakk+OZTKaz2+QWNnGvpc/GkQ7PqOBNNnUOUrMofxDJhz7SrbvSj3TGQ6v9X k9oFeGSbewIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRAiaqI2an/mcNKgbCFARPMjGfvO6NtlkuiSiOqs52w4iatIAC8 0Pmkxqfq76VgyeaXicKy6maitvwLCG0VR+t3JTANBgkqhkiG9w0BAQsFAAOCAQEA SUZNxzitD15GcOh9rkWDB6gw1K15ktqGH4Y7wejaI3n9gPR0+QKItNMVb75WhIyG PPPhb+cUA7vVSuQJZTOOvtnmhQxfZ69DSJzrJBZZzk432XoOzcBTTRqZR3FMd+FZ LCgJNG2wqZNnB6nqDduER0H8Z4Got3JjD+fP8I3VYR2kpRoGwfunBMlElPM7akx6 OxMlrBF109tQhuHlNe7A4YuOAC1OluIEPthZdUELzyN5aVA1LesWOcSeD9cG/H5J 4x89vg+HxynfBMLvUVktqwo1kCtOfT/73Xm/ji6uISd+wv6WpjGN545LanGC4N4w iIQhxGL5lFs0d0RAfEZQTw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIPVzq7h2jYv8wDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwNDA4MDczN1oX DTI3MTEwNDA4MDczN1owMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AOTdbAsns/ksUYNq8Cc6LzGfGLGD1myOhoWnLDfoAu8Xe3wG63tcK4eLbgjq/gBO PkEJRIjIp2tGwOoz+bWmEFT1U4iypo8F4RgTOehq5tYp2XneeFQrkLyvp8iyMIOD Cow17S5qDKTwD3pJxVHU5VG/1XouDffzSHEDu+wN3NCZum5tXRmpdZYRICDZz6kA YiH236nVkp7477v8A4A59SAKYu5y744+2/ibIVcz/8mzz3egbTfcSSiF/9Ud0/vF q2umhdHWePvYLr/bi5CAG2JAnOOwXW93HgUVULHaCeq1duCSFlVRjqsPlvufOCqy 2/9Q56H4EBp99MMZQJUVErkCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRA/8e5Zm+ub0g1a37fdIeNP9TtbWPYVw6ZlX8j8R6+yOEjd6TlRTXvrQ8j KQHSm2ZwhRRvGdU5iMp7SosKJPHX4jBLBgNVHSMERDBCgECJqojZqf+Zw0qBsIUB E8yMZ+87o22WS6JKI6qznbDiJq0gALzQ+aTGp+rvpWDJ5peJwrLqZqK2/AsIbRVH 63clMD4GA1UdEQQ3MDWCMyouYXBwcy5jMDY0ZDUwOWE2NDAwNTFjNGY1My5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAka/ofUlww75K ZT4IcMK3LyUFsyaJdAHbEKmW2l3QdL8g2/5Jb5ZFbAPpk8jEMoHHeygpS5vxFJ9L PL9fCzOjapTh0PbWkwqgFFd6XrPF2/vz8wk+JoVFFpKfUN7d3GymXtgMpX092XmH dp7v/RLTTY2JbRslZeu27tZOTpo2Czmu/LJCrYrgTXlfKUMbB3x6rJqArpzHnS+B Jtd/cAaqsEmXXYhcFv8My/ytS4ABj2rjacUHlpJt3FlCX732RjA/wjwRlQMp/6QG hVO7lNcSX5ykyfNfhbcZLGETe3a0fdUQE06Wa9N8eiZyHpcVXdUfUZU0u1qXry74 F0cuKfVOhA== -----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-04T08:12:04Z" 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-04T08:16:47Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "5686" uid: ab5cf490-ece0-4452-b15e-e98972e455a3 - 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-04T08:12:07Z" 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":"f9ae5d24-9548-46d2-a519-00d304e3d97f"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-04T08:12:07Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f9ae5d24-9548-46d2-a519-00d304e3d97f resourceVersion: "2102" uid: 39e59c9b-5642-4c41-83a1-701ac50a447b - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIINuBDjFGsG+IwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5Mzc4MDQ1NzAe Fw0yNjExMDQwODIwNTZaFw0yOTAxMDIwODIwNTdaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM3ODA0NTcwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDWs586r1eMpyOu5NfAW/ha0hCVFCh+ZKXg X1Llhkv0sKLWRA33+crttwE+1bC3F2r8XhIkGqX7W0joyIb9UmmVlfqWHgENQMU/ rUmT8CTiReIsFmi27WEP+eCuYAGNQu6Ij2W2hqhP8xqlugXzLgLWkTxZ4QAsbgRV +ywuUgaK60OqJfQbR95IMMZI7v6Eh8VswO4T4IE5hea5enNh3T3pw0p2oQL+ZgHU cIOs6c8UGWQE/PgWTXySv2w4C2Op36WdrmAAupvAxCFFcG4yK8hUExcb7U7qOF/k 7aFhcrXO2FjWO4SyhpiTgbI2Xvv+2aMAgX28riNOe/1M/EK+leLVAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSZEavQ RPN//8H96jHaj1FSUrqNYTAfBgNVHSMEGDAWgBSZEavQRPN//8H96jHaj1FSUrqN YTANBgkqhkiG9w0BAQsFAAOCAQEAjQKhceRXeJpSbbE2aohYtFyjZzRLhV/6J9W3 Q+umiACdIBmt+M2HHSD5YQcRbqBLYOj9mEsxx3oo0/QtOGRbbqStat5OIRlUZkzL 2B2OdvoS5OG7ONd3wtixrA3xlwuX99yQcDfRn9K3cy4KxoELckK7CeLMPrTovEg7 7oj0DJpgmBYyJQFkwaYsI65YFsOfpZHPLlV7ngAz/AsJ4MMr7uraOVRfEEgj+HQ0 BV+75lWXBFJOWprpNdsak7B7RzK+AINx1L0+vPZY8EUrpbXITHaiiCi0v/xgp8g5 75VH4xv3TE6GZxdez7XR+wzo9zxwmBJSWub7jKnBBi2zB1MVag== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-11-04T08:12: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-04T08:12:04Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-11-04T08:21:08Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "7472" uid: 41633614-294d-4192-a387-e2f50afef9d2 - 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-04T08:12:07Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"f9ae5d24-9548-46d2-a519-00d304e3d97f"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-04T08:12:07Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f9ae5d24-9548-46d2-a519-00d304e3d97f resourceVersion: "2100" uid: 8a3c0cc2-f9a1-49da-a50e-48762618d391 kind: ConfigMapList metadata: resourceVersion: "12764"