--- 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-31T07:54: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":"2ee6b0de-c6f7-49af-afdc-517488e2378c"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T07:54:08Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2ee6b0de-c6f7-49af-afdc-517488e2378c resourceVersion: "2345" uid: 4ac02634-ccfb-4b5e-90e4-f2b59dee9b31 - 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-31T07:54: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-10-31T07:54:07Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2337" uid: e1c46539-b63e-4116-957c-b9f5e62482d9 - 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-31T07:54: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":"2ee6b0de-c6f7-49af-afdc-517488e2378c"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T07:54:07Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2ee6b0de-c6f7-49af-afdc-517488e2378c resourceVersion: "2336" uid: acf361f2-43e4-4a51-ac81-71a352a31493 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIISYz6Xrf8K9wwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMTA3NTE1MVoX DTM2MTAyODA3NTE1MVowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8f37jdyfgVlQ 17U7eVtVBG0fchJyaopazUQudnryDiy1p5j5yO0pbl/1iBTnOxlLeUEHGgwd3sbL ltu2axW4nYFCCKYRoiuF+gyDFQvAeoJA1TuXUA6skDBLtcZIjN7mK78FCealk3Z0 WQril7RU/+gK2uBpu7gdNMfy0uubuGjp1+m73k4IpAVYk/YDlcBg9R/0DRgjJSlF nZ+T4ORPqGt39QlGKv0wcgeqhSnqgZycKNXKJS+sJZCjsJS2l9qgV7SjXFKy63pI DFWzar9StE3OL6eJNi7IcvdoFlpicZa3TWMb3SZw81QfPrXJfg/qjiQ1e9DNIL2I ZFk+t/31nQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRAfZKtHXxOIGPwBMQQDBmxEfv2+8aPchKWwgCVtuPUp9nVxc8F TxGXa9yBbqys/1maxQcP7wDQps8zVaFgOc2uODANBgkqhkiG9w0BAQsFAAOCAQEA a7iCByzGEblLNuKAqkx/jvjwIimSOlpgJJ9oJ3Mc9XrK8Ij9ihXNQnWshsg6gvig E1O9+d8wGGkkmslP+3LB3mkf8z3TIGFqX2sxIwIdNUz6c9Hvg9tBRKbnkHszj9xU gQs/1JXk/UOFb7piMNF6yGTPgwRHjkb+LLECw4c/6COc1pCNeNnL9fxCbdZI+Xem A1r9iFfyORQ6+e4YumFsNMPvYAQmVQ6qlYk13yEx31F0uxw7HtfMNv0FNuplmiqk 2rXkkLmWZjBBQRJ5sKDw1jGYWR59cL93stdH8w6ZzYHbXfSffqwTOVDVKk+ffoHb jd/OcOowon8Io51OR8vm5w== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIBtjU/2FQw/owDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMTA3NTIwNloX DTI3MTAzMTA3NTIwNlowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ALMixREMtdm1KIy/CVPj3tOxxhKHdpnnRE328j4ATNucdHzQ2x+a4Oeq5jYknNoV gi8qNt5vokmkbMu43ba+9Z7SHMpZCfNBGphnyCH4i8LXyTdBk51uLVQi1y0xcEky mEaZ6nwZHZoEr5EEV+5MAAXnO7xXgFh93xPjg1tPxH8wvswJBfVIAF+ALHfbIcGJ 4ZdQ3UZ3MgQvKl+9WmIliY5SO0RNk2UkGT/H3wo4HSkbUTb4PUu78bFdEn3h28i+ RRXvqIS1heNhhvhhoR+LYc50D043WP62c3nwGTUejA+sOTsnvwtZtuM4QQe9xg0H XBZfitUB4WvIRe0McdLZbDsCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAMAyN7E824bMqHSdKE13ynl9BgeHBN3xM4H+5UVnNCBRK20ifyC59TY0K WRmRtMrO8LUodZwTqTAoE53lLbPU8zBLBgNVHSMERDBCgEB9kq0dfE4gY/AExBAM GbER+/b7xo9yEpbCAJW249Sn2dXFzwVPEZdr3IFurKz/WZrFBw/vANCmzzNVoWA5 za44MD4GA1UdEQQ3MDWCMyouYXBwcy5mNzQyNGVjOGY1ZjdiMmIzMzM4Zi5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAaeOrTza2chq5 JNLdT0sA9KAAOGLeGf/LlK1E6duqfqVq88LVgbgeYmaG294+wYehURMmOduqKVXg QRfKpvu1p575OcZ8eBu4+3JIpkrznIzH/2OHX2m1V8Tiy/Xs/I3/rn3t4Z2mVnDl AkUdqBv2XZC+nJBXyiU6znxyjqFOrOAsqZGtWKPB7h7P3MdWoJZcguZF/Yze7pvG QVImeTzFzhbnDJAC8GGfyJQgFUFmh7izHpGAVdwbqOrf+mlKtdEidpuveTJE3+AG jD5pJfvO39OZAcyVTiSTXpRRMhhnn6QPdxy0dxbsA5RODNabKiQ9RI5zFV0vIwcf VD2j5CMhkA== -----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-31T07:54: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-10-31T07:54:38Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "3750" uid: 6feb6f19-c440-45fa-9961-fda6fd13941a - 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-31T07:54: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":"2ee6b0de-c6f7-49af-afdc-517488e2378c"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T07:54:08Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2ee6b0de-c6f7-49af-afdc-517488e2378c resourceVersion: "2347" uid: a76beb6a-a760-4c85-a7fc-c4c96a357ffe - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIGTeovfP05YMwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzQzMzYzMDAe Fw0yNjEwMzEwODAwMjlaFw0yODEyMjkwODAwMzBaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM0MzM2MzAwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDw7QNQo3SoARGsV0PBhKVJzxb48BHoMghI yD56hHk/IVpHTWl/8i9lvYLMxXYLi9LIc4TThBL02g1BtQX21cqy6svhoVMy6Z/p Z0wE6sKOohvbZ8U3jRcRf9kL5ZPH0KdWCgl3YjcTTmBz/juoSqC9Kf2gbYhox3+n aIkbAb3F5mPi2gHYnzuiMUPJHVM6ROhWqLZbZ5HnG4PnXzg1BMSqJE7WIXULTdfT 6HjVSbifaY1HBnPDepqouwjw8k6j7bmEvlgtibtkRu/PeZjZggi5cS3ZdjNJN8HO FPzuPJL2jVeckMleQ6B2gBH+1EErNYbydpHa66ck5Fr2kKzz8dqvAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBT5MLCh HUbhX5nu/tXJdLHextjtHjAfBgNVHSMEGDAWgBT5MLChHUbhX5nu/tXJdLHextjt HjANBgkqhkiG9w0BAQsFAAOCAQEAwjG5Zeao5fYOCLrstuXx42NPijKtfMh/cz2e PqwnKsTP3joJWyQUADDMO9aE7WLJHtYxF40niSEEl6xmbrv85X5SA7LDQn5t4fIs xbGZ4Tp8/nEI2IN8UJAGCPa+lTLln7w1+qJxsWQKpLWNZkNwrZvABSfbCCIR7z7B YwRvIWKlsXGvdYSSyLyFUXxOCqLd/Ftj8KK7Qn1RJIS7dmQhTiQEPgicPjkGSj43 qfhockIwF0QCkL34qKXBrIce1J4psW1N4UXUeV78pDGJ4/4ybK9zLCXoIhIYSozJ J6SORFHYdS2q+tvoosDkbG5fJFZOIztN7EB4cw6uxEh6hdSPLg== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-10-31T07:54: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-10-31T07:54:04Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-10-31T08:00:39Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "7138" uid: 9758aa5b-0eb5-467f-9b7f-79e6b4d3513c - 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-31T07:54:08Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"2ee6b0de-c6f7-49af-afdc-517488e2378c"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T07:54:08Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2ee6b0de-c6f7-49af-afdc-517488e2378c resourceVersion: "2346" uid: 0303ada7-934a-4b4e-be2e-338d15ddc5ee kind: ConfigMapList metadata: resourceVersion: "12711"