--- 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.21.32 creationTimestamp: "2026-09-09T09:37:08Z" 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":"a353e30c-f394-4369-8c06-c48e629809d3"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-09T09:37:08Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: a353e30c-f394-4369-8c06-c48e629809d3 resourceVersion: "2355" uid: ee471998-78c2-451b-8765-4d8ad1c38799 - 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.21.32 creationTimestamp: "2026-09-09T09:37: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-09-09T09:37:07Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2347" uid: 836c5289-7da7-4d12-9692-1d981de0e15f - 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.21.32 creationTimestamp: "2026-09-09T09:37: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":"a353e30c-f394-4369-8c06-c48e629809d3"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-09T09:37:07Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: a353e30c-f394-4369-8c06-c48e629809d3 resourceVersion: "2346" uid: 64f6620c-4341-485a-906a-b5e82f0f0f44 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIXmUz6vmiUmkwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MDkwOTA5MzQ0N1oX DTM2MDkwNjA5MzQ0N1owJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxko73MtA1W3J Ej5i0htGkmMa0DkOvUkbvO31Z7ETZJbHWFbj/9hUdUyls/oLYmtmCkVyll4bM2Ty I/AsU1a4GMsOypghYNVhWIoX1EvKbA1wF7xUTCl/m9ObrI/JrpEWlIZHWOAtNP7s i3CwKiiG6ksm0tlPG+oaBRzzkDaquuVbuB1mWU7zdxj31vQT4XHmiY8HdOfHiB4G pLyRga75WtMfYQeC/cohDrfXfmxk/IQq3aRHoJ27yf5b31FUMqpsZWC2vTVcuQb+ 5bNEGfl93hYRYRzKn7/2iwTO12Rtm+0FDNtGKdxjOH5LjB1Iwe5uB34MjuVCcMn5 /t5t6ozZrQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRA85f5AzzxyzueeNYhxA30ZiM6ncICf/WhebEVdX7HFUDxNmIH DTYZKwTCzuNv3ClbuQDMf62v+PP7RCBF68gitjANBgkqhkiG9w0BAQsFAAOCAQEA KCYHhK7uJ70JdPxJuM6vBaUv3oObR0/L9f6YXJ07MRYzlwZ88p+rVaZoVecTnFsG UxBJEK0imwa2oTa5gn+nyNFOzeBa9Jd1tdqQ295cvU+6BXLfyCygxxxmxJE0m23j Ds+w/9psuzh1bh8zFYDgczQCpBVZSoMI6TsC3X1t6q5Vw1X6x3r8Fi1nB8P6j0rO zdE8fvJ1Rolrs1o9kJ03kj1aMStJwqwFiMqmnD6HN3KkEllGDPox8DwFYqIy5V+w hYj81GOTc48REJ9g5WIh0yj7q/g/PDfKfWIM1wPMDSDbrM8EZUmv80so3uBPtlV5 h1ppcy3myfx5NIudAOgOTA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEADCCAuigAwIBAgIIQxjlFuRaImMwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MDkwOTA5MzUxNFoX DTI3MDkwOTA5MzUxNFowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AMzgCkuxTObvYxxYMiskMOzpWFN7K5VMVtPGSuu2ZHIbO+NPqhFgHY9kVN1EizQ2 bXhhXx9E3HDrsJC+zaC4MPzVWUZHun+xSrYej7vHd6zu3uHhdGEnbnC2yfsAEBkv uBUa7kBWtCS0luroNRYTxHUaC8WHh1qdB+kGKQCox+t8+EYzxLOSKRrX0Jtv3UfB 3M564bUrtXLmf9D2mNnR32RIZBuzCj4SUaxqmUwNJbi71MQJG+Yud6sGSTuiXj7C dWhQK6vet6+zwz+VvuX4YPn/CqziN6DDnQf5FleXfU3699iv7E7ubxvvcYCyp91v 6iSeRmQZSVCW4SU6eTCVTAUCAwEAAaOCASYwggEiMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAyCpWjXEHFdJPEdk6L0eLjzBtS0Sws8pMz+2ewrGDT2AzcsFiNh0KEa6X sexDthTmBXtgLpMXeZeUpcOzwgQhSzBLBgNVHSMERDBCgEDzl/kDPPHLO5541iHE DfRmIzqdwgJ/9aF5sRV1fscVQPE2YgcNNhkrBMLO42/cKVu5AMx/ra/48/tEIEXr yCK2MEsGA1UdEQREMEKCQCouYXBwcy43N2JkNmZjYi1iMTJhLTQ0NTYtYTRhNC00 N2E4MTc4ODYzMDIucHJvZC5rb25mbHV4ZWFhcy5jb20wDQYJKoZIhvcNAQELBQAD ggEBAARBSuxSpmEp0X66AI8zp0WC7amkjDBD6kW4/D/94vqhJaLqaZnMAYh3hgYq XeVVtsL0hI29oitNjgXzlclZTGx3xVUodTYkp0KakVw6hCsv3ZnP4F6eK63LLY9I rGwTVU9dtA8ipxUOe945N8tiMeKh7HQnkaHTXAMctptUtt52BDKdoYcHyVJQCIZe lYlk4KBCtfhiQfGeqpdoIY+J6/CFd5KSWsizzoLa4+4sdb8KQJEe2LnqJyQc4y84 /xWsZPe+q8Vqd4KiYTB1XprJyjHMDbmJJuVFzhF8/qZ6JZuLtJElGftU0K4uRVy7 lPxXX8/4qrC8ct/f8H6VH3ZeSiQ= -----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-09-09T09:37:15Z" 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-09-09T09:37:15Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "3304" uid: 4fd2a781-bd5e-47cc-972b-977cced4a291 - 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-09-09T09:37:08Z" 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":"a353e30c-f394-4369-8c06-c48e629809d3"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-09T09:37:08Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: a353e30c-f394-4369-8c06-c48e629809d3 resourceVersion: "2392" uid: 41efa45a-428e-4184-b675-9906b95dbea9 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIICvBwO+Va5dIwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc4ODk0NzI0MTAe Fw0yNjA5MDkwOTQ3MjBaFw0yODExMDcwOTQ3MjFaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3ODg5NDcyNDEwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDkwqUdNtLCJTS8/1ytS8jNgwZBjmcLHtWB qM4wccvPNl8IpZjA5Wb6DhOgMrTBnAlePdFzBH8loMtkqnK2Q6n0Ex69AAdcCDTY xAXFfcGvnOJqpN2AR4gNc9mio4pNBFL94m6x26nksLvGzWXIV2E/pMmlfUdX7Uhm DV+kDgWoyIi7y+EtjfxTklgiogzn+XmPKsNHcl6o8ZQBHlLKvnWLcNgraQsEJDB5 6iMWfYBXtDHQzV7jx88vhD8Sv2N2jYPnqPc1s9c0QJeFgrJ0J4Agv+QZhx9H8wZ/ qha8Q+D99Pr8hiYiyNkErK7/v2kbYwb14VxayzxYxj64ZUqwMmPjAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSVazDD dnPwZ47WZ0uspAaiF3/DZjAfBgNVHSMEGDAWgBSVazDDdnPwZ47WZ0uspAaiF3/D ZjANBgkqhkiG9w0BAQsFAAOCAQEAHhFLWA64nIqopyEVuLatVc4sbkVrh7ml1d4N D550X+acit4XFCf0t/cLqR8Sp40DEF7jmGf+8DzSPlgF//RUhf0Iv+j+7SBev7eO +9Gcn6Ezq5UNQdj/tRhulPjbEnsZ1obR52PZ0yjwCEMJnqwN9QJXGQJaa1t4ipUn CBlU8CT0/mqspLlVRVOhli2TUtN0AU45yjwoXjU1vBmSHobELgECKPnyZS1dROdc lL1I+azC2Q4HnTkf/mdPq6CVIRySrzkaOHZzDN8jOH4guM6P0Kq3eZwXxyl8hlO7 X+l8HUH7VjaaV8FTAghVHLcOxtWNcRj/bem0jOuVAF4StBNvsw== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-09-09T09:37:15Z" 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-09-09T09:37:15Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-09-09T09:47:33Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "9292" uid: ab615cf7-6db5-4f07-91c7-6184a84f849e - 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-09-09T09:37:08Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"a353e30c-f394-4369-8c06-c48e629809d3"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-09T09:37:08Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: a353e30c-f394-4369-8c06-c48e629809d3 resourceVersion: "2370" uid: 042e891a-e6f8-4680-952b-a9e153b8c9d5 kind: ConfigMapList metadata: resourceVersion: "23768"