--- 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-30T19:00:00Z" 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":"18b01eb7-8a89-46ba-b810-3c69c9c1a72c"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T19:00:00Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 18b01eb7-8a89-46ba-b810-3c69c9c1a72c resourceVersion: "3052" uid: ad08e1c9-ede5-4e72-bc09-919d5557b411 - 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-30T19:00:00Z" 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-30T19:00:00Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "3041" uid: 5d25233c-cc6d-499a-bb4d-8590332c6493 - 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-30T19:00:00Z" 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":"18b01eb7-8a89-46ba-b810-3c69c9c1a72c"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T19:00:00Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 18b01eb7-8a89-46ba-b810-3c69c9c1a72c resourceVersion: "3040" uid: 4759106c-c893-489e-8fc6-84fff07aa080 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIXQA/rZysMncwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE4NTcwNVoX DTM2MTAyNzE4NTcwNVowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnk2HkEw/+aMV V2oFf2esz7hPy6HXXlt2PZUHh1rXFwzcNuHFuFZCxtCWOwZJVUcRs6Zp4xTSSPP0 YB8pJCAvBhr621JWpMWhCvDhpq3ifR5DmXDfdu1uexN0BkFDr5Jqdb6vSmHMajpw q3/X8vGVWqy19mEHZyVu8yilp4VVW3Z9RSFMUMhjoYe0EdhVW8rLfgTAQu18jF9M W2UqrOnzXOc20rRU1LpCTdC/MCZcKhCk6PmEtFdASy5aZhyJ4qMDaYT1jFHlV8wy 1VoRVkh1lgWy3hUjFClwp2HAPT1ApivkhCu1vev1IQ8JH46UskI5/CinzvqSn5qm Nc3lhb2b8wIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRA3tFkrhe1suladPSHc0y3qj1FdIMq6fUQrRDAt2eFrALHQTjs 3HZWdO+yOymZr4Ri9iQqXI8t2xI3cUGIQpMHPDANBgkqhkiG9w0BAQsFAAOCAQEA Txlw6LGlIWXEPDSWbOsniPKC+3Q967oYhWLviDy4zcsj6geT4+FRxu7mm/8cEYN5 X1KdWttbKQe3ImaD7vW3o22XWCIhIunBMztfp3X7p4ITdw/HFkbaTPNtu6M/i8T5 NnPl5SctI3oZ0XngAptzZgQwFgO9W2TupSLrcieNv9fr71yQgOA+wByjuTj42JY+ LTtmaP8aFLBkggCYBEKwB/I2b8ezZrgEojYZkTLVbsKghHdA2KiMga5yzNJvNu60 OooeVtYIKMv8X6/uz1cLBDSL2cGSuGWa57LapLMXxL9BP6Iuhi50TyBu79c+WusY 7qtSDW88S7ymqxVxHAlNPg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIPl6OI62s88AwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE4NTcyMVoX DTI3MTAzMDE4NTcyMVowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ANN+bwFPaE6BtDtWG0itey+op4JMjCK1nAYZJe2f1GWdPRxiluyUPL3cSYFdLl6N 5gmtZd/WPxIe6RxBQGMioJ8ttJMNC33DbviV6u5KTf7hG5pMPOV+jhalDPWoafu5 8NDI9v7TtR/+ICJCbClrDmB09HJF0Hi6KWeD7eXPUeXvJUA8EGTfB3GxywcY95wW 7Zvg4hAfqaZAEX5Mz2J3CHYPNEI9NKnpokhOaQ525tknl1VDLJLpNuUnGtIPKoPQ uIaF/9DGyoDUC9vY3+aZkIT6BZMB9cSeU2RwvAn1RpCNscA3zdZQ1sGMxNrVISSU jlp2xU6SN7ssv3cnGGS08VUCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRACxR68TEEgr+fe+BcC71te8K86ifCT7RGxyxl4HzO1fbo47SnmetvdXcb pSgvz9cizXJGmqJzNqN/zy3wlUfJyzBLBgNVHSMERDBCgEDe0WSuF7Wy6Vp09Idz TLeqPUV0gyrp9RCtEMC3Z4WsAsdBOOzcdlZ077I7KZmvhGL2JCpcjy3bEjdxQYhC kwc8MD4GA1UdEQQ3MDWCMyouYXBwcy40ODUzN2M4NDg0NWE1ZWFkMGY1Mi5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAIIz92yXtDAZz gnOlv2TQfVR4ysqCThtSKkldPfXFd0EXX38QwpzAMMCd45AouBVGM94Wy19mRCVq 08wQMIjU2b5lM7YxB177gzu/zZ/bli0xRIk3STSUxnmCo6TUgujAmdI7lfHsT37f 6gHQTuNtCp42nPJfdjJeEujf/wrEpKGg+gup21kzSDgkP0djZN7k8yLmUK0r5xt1 TVQyufhMlFMrRS46dzk+r8zg3/uqNUoADn6dvkMx+QFqP+UavSZCW1i/qZxmCAgf jzzBtTM3HSUeMpIcIiCk5OP2ipE0Chpmh+sMy1HcTgpD8I+BwiDldwSTy0D2dTHL Q6b2Tg7XyQ== -----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-30T19:00:08Z" 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-30T19:00:08Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "3421" uid: 1c2ecdb0-b8a0-46c7-adec-6809e952b97a - 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-30T19:00:01Z" 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":"18b01eb7-8a89-46ba-b810-3c69c9c1a72c"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T19:00:01Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 18b01eb7-8a89-46ba-b810-3c69c9c1a72c resourceVersion: "3076" uid: 2f6d3302-6f63-4fe3-a256-b071884bfffe - apiVersion: v1 data: cabundle.crt: |- -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIDrHtlmlO6UIwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzM4NzE2MDAe Fw0yNjEwMzAxOTA1NTlaFw0yODEyMjgxOTA2MDBaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTMzODcxNjAwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDcBpzWXVA1dlGWXQJ8NC8Si/31rKUB4LWy 52mddlg+mmCkt3DB73aZ5MH4d5FnkjO8+jnScZ33fqQ3K6uR2jaJQyvkSvqviAXW bimNcKTzalgJXapUvDnJaMtwdpNeVhMzrCeAlxIneiV4at9e8Qle9ltepfaTRE69 q2qndVW3s+9ZJ8OnukMr/IaaigpBrFngmrFxd6cJgevecRbDDfoYaeSqVnnCeYpB SHy4h/Q0TIAqFI5EqyqSuE1uEVxjYGlezlAGYebsizpLjNeLpCQnl3hZDRoEa3/A 0X0HZUCiizIXIbfryAsHtjtMYSEb8rgdCUdhEMZ7SplFQYGWni8FAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRAFG5T 9zObAPkj2MetC6sr19j1azAfBgNVHSMEGDAWgBRAFG5T9zObAPkj2MetC6sr19j1 azANBgkqhkiG9w0BAQsFAAOCAQEAxz62FvJcLF8LghEI9l6MjH9H5PNkFf6PYMVR HPOrA0f0DMw1Qsb14Mu0tKnftgQptEIHU3uU8aOx+x9J72ZO3CsCeFuUhnPgX0dG OdEbZWWl0q65XD5hRPCAMwEPAmu4fy1BFD6+n8f4m0HClO2Ao2h4wP+GYStSzvo6 uRY0b54Gh9ZqK0TCNjppIl0KR7paBLFNujQkvZ63g4vVZ0bcAq8bgc28jKlumwz6 QL8xoeHYzA9SpHdpRZBknA9JUGMDHFUnVxLtr+E+kBWzWu17lz9lsNJNhgf8ZL+o OiKbT9q4N6y/rF07AyZAUXTjbj8gWkzWzVOsbd+divuQjtX6Wg== -----END CERTIFICATE----- kind: ConfigMap metadata: creationTimestamp: "2026-10-30T19:12:59Z" 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-10-30T19:12:59Z" name: odh-kserve-custom-ca-bundle namespace: openshift-multus resourceVersion: "13492" uid: 95127d9f-ca2a-470e-b0c3-879c81c21445 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIDrHtlmlO6UIwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzM4NzE2MDAe Fw0yNjEwMzAxOTA1NTlaFw0yODEyMjgxOTA2MDBaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTMzODcxNjAwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDcBpzWXVA1dlGWXQJ8NC8Si/31rKUB4LWy 52mddlg+mmCkt3DB73aZ5MH4d5FnkjO8+jnScZ33fqQ3K6uR2jaJQyvkSvqviAXW bimNcKTzalgJXapUvDnJaMtwdpNeVhMzrCeAlxIneiV4at9e8Qle9ltepfaTRE69 q2qndVW3s+9ZJ8OnukMr/IaaigpBrFngmrFxd6cJgevecRbDDfoYaeSqVnnCeYpB SHy4h/Q0TIAqFI5EqyqSuE1uEVxjYGlezlAGYebsizpLjNeLpCQnl3hZDRoEa3/A 0X0HZUCiizIXIbfryAsHtjtMYSEb8rgdCUdhEMZ7SplFQYGWni8FAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRAFG5T 9zObAPkj2MetC6sr19j1azAfBgNVHSMEGDAWgBRAFG5T9zObAPkj2MetC6sr19j1 azANBgkqhkiG9w0BAQsFAAOCAQEAxz62FvJcLF8LghEI9l6MjH9H5PNkFf6PYMVR HPOrA0f0DMw1Qsb14Mu0tKnftgQptEIHU3uU8aOx+x9J72ZO3CsCeFuUhnPgX0dG OdEbZWWl0q65XD5hRPCAMwEPAmu4fy1BFD6+n8f4m0HClO2Ao2h4wP+GYStSzvo6 uRY0b54Gh9ZqK0TCNjppIl0KR7paBLFNujQkvZ63g4vVZ0bcAq8bgc28jKlumwz6 QL8xoeHYzA9SpHdpRZBknA9JUGMDHFUnVxLtr+E+kBWzWu17lz9lsNJNhgf8ZL+o OiKbT9q4N6y/rF07AyZAUXTjbj8gWkzWzVOsbd+divuQjtX6Wg== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-10-30T19:00:08Z" 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-30T19:00:08Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-10-30T19:06:05Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "7100" uid: 23efccf0-d1ac-420b-8166-dc9c46e30526 - 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-30T19:00:01Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"18b01eb7-8a89-46ba-b810-3c69c9c1a72c"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T19:00:01Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 18b01eb7-8a89-46ba-b810-3c69c9c1a72c resourceVersion: "3066" uid: 7000f623-7e64-4ca9-a90c-934ccd5635cc kind: ConfigMapList metadata: resourceVersion: "156322"