--- 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-31T00:59:21Z" 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":"93dcbccd-8907-43b0-b749-76bee625b8e4"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T00:59:21Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 93dcbccd-8907-43b0-b749-76bee625b8e4 resourceVersion: "3062" uid: 424b26a3-e039-475f-9c67-7f55a780f55e - 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-31T00:59:21Z" 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-31T00:59:21Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "3043" uid: 00b35980-6b53-4991-b1f4-e8964467de04 - 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-31T00:59:21Z" 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":"93dcbccd-8907-43b0-b749-76bee625b8e4"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T00:59:21Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 93dcbccd-8907-43b0-b749-76bee625b8e4 resourceVersion: "3039" uid: 0e1b1bc1-8df3-42b2-ace3-9bb04bb1bb04 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIWJ+K0UyD+HIwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMTAwNTY0NFoX DTM2MTAyODAwNTY0NFowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4cdmwbjk5CvC U4hfrR8R6/3qYMBY7Bv4jkOY0CXk/wsCmfsSnGiKMZGFpT6p9jnA7Fj/kzw8n83r +1IAl+A4aGi3Nb553k5vJD9bW0Mifp9vQDJ7C2er5LwiVKEA9xi+K04deUgY4PNG +CHNRWLJ2ZypN0YPHPMSR2zx8JesFO/lFU3f7GSJ6CkSQdTb10dVJM0zXEG5LPZV rf850iLZ1eWbX8n5gxbCn6qJSlkXyDKFzfdxM/UUAFpd7fLf9vu7of8E5JbsJClm w6GBV+2N7Lhxa7/ZBTzMeSwzNlGPjQn+f98qFmUTNSJVCNXKk7O6q/xgDmxyvWsQ 2Ia4LdVjvQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRABfZOITpV6tmxVD03SqcHomtFupGmbvP+ClqcHvccPuPn4cKc obBMgB6CcKT9VqWH/VPdbEUS0QyXYbjz0xN3vjANBgkqhkiG9w0BAQsFAAOCAQEA nbBLlmrVcLGM1EPLSb/faesfSNEWXMhH1oi4vKTfaidnpMaXTTLNuJ70ncdGDHn9 OLDohZXEJBpmo1UJb2ZTxV2srt8iI97SSsH6zdraGcEJ7xPvLPZ5Ptn1MSiXLVq6 dbmYgpzga2+YHFyigrteSsO6icEGWlDUhMQmhY/or+GKv5KX3CpLzVGD+zpbjlRo fee0OHUzytVswKEzDiAejTMCBrTgJo0gMrCODqUydznYpCdGA2hn1EI8iAKWou1+ ce5IdZRLJvRWgxQEKUm6cta3SkFgLzMbPYltqaK6sAKmMOp3BDmKjg8LNvo/ZS3M 8KjBSWcyrjCBEyiNfsHZdw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIIbynlMRazUowDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMTAwNTcwM1oX DTI3MTAzMTAwNTcwM1owMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AO/BPS4mZISOI2IOwtXlt8BUht/iiR71Mlt77XYvfgs7pZW8c9NCoXBlO93cbgGY VQW+B4uU3zVzz/MLhpBmhaUwPRk+u24pG28A1BN5bLbs2pWNy37Qtt1sW2p9Tcu7 Rub9BuieMb+L+FY45Sk4pi9eGv6g8u/tgcwPjZ3Oz8RsStm9jYrkYV6mN/+A36hO gnWv+8vB/w2ofDnivcRlYHFaDaMuY1+t/0uSz5V9kWPSgs/GGPAGQhYOptXUJmAI VB0l+gk9Zqwg79Bi9IODfuT7sz+fj/L2UYRsMez1VyG73AKuNbSGRP23MfVS1hB3 cb3ikKmyNe/om4bmPcDYWssCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAJA+IEeDCytzfIRjirmPWHFW+hr4PoTYBW4QmygnAZtPdqeZEXi7dXa8D Rrs7VUBOK43AY8gg8RdKU7H4bsr1BzBLBgNVHSMERDBCgEAF9k4hOlXq2bFUPTdK pweia0W6kaZu8/4KWpwe9xw+4+fhwpyhsEyAHoJwpP1WpYf9U91sRRLRDJdhuPPT E3e+MD4GA1UdEQQ3MDWCMyouYXBwcy5kMjkwYjNlODE5YmUyMzI2NGVkYy5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEA2X0yQ6/FwUiv ocGfudx2gVcKNeaKosVOQ2CjPMROptFMwAfOO6TaKBaVeU5/c9zG/XGM+KkvkzZs 6HR9fhGNuQiG6u/KMsrft4e7UWMEGglny5Y1KVFs+lCa/Q7P4+wjB6tvdMOXn1o1 S+g4k2QEei6aP/gRbFoG/cehS1A/YmlHSx/4NTG21HfRTU2WPW0cJXd7e3VPC82p P/lhB513udi0XdbvpXOJTg/70g7M6Dro1/HrYosFUdmBmfnfpxIrdS4s9NzLh9Z1 W4+K6jE1kpoC5goTWsmSc7+BfYhKN96L6Oejts4TUlgNR/xjDBTVqwoniwx0QK7U lFvm0otzsw== -----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-31T00:59:36Z" 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-31T00:59:36Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "4094" uid: 7d66ab82-23b4-4a60-90f3-f4a9858c7272 - 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-31T00:59:22Z" 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":"93dcbccd-8907-43b0-b749-76bee625b8e4"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T00:59:22Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 93dcbccd-8907-43b0-b749-76bee625b8e4 resourceVersion: "3111" uid: 704735e5-43c4-4ec1-b4d6-0b947ee3de27 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIQuwza0jr9+wwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzQwODc1MzAe Fw0yNjEwMzEwMTA1NTJaFw0yODEyMjkwMTA1NTNaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM0MDg3NTMwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDc6237rLBilOUt56/I+X/BnioqmSjrGS7z ToZy/73SDjvO/I47iNHxBdC7elLvZs2WAE7AjkOg23DFgmbBwSWZ9vs3Svh9EtII cHa6f9Vd+JwjadqXL+iZwh6DCzUxdEyPESeqCZT6xzc/7SVJ9psrmT5t6qZDZprf /3eHZN+7FmI27JEn98rc8xjTNXXkT7Vg/5XwOdZrznGaHX8i0QBKjnqx1ptrOBPl HG2kT1jTN7S1QXQc/B/aGuh9KePCNbxeQRhPJtyJtN8fGfK8wYFGFFcYexQma4qU R+pvhcj6VuwLEjNLboiQ2H6ytQlTCVoH2J2TEuV6nvRfvckEo85pAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSl6K1o IlK0OXrQFOUnWpwMQ81gTTAfBgNVHSMEGDAWgBSl6K1oIlK0OXrQFOUnWpwMQ81g TTANBgkqhkiG9w0BAQsFAAOCAQEAxxewi57eWeRZyi3YXlvk6rWZijLpYjS0NYbN ZPQqMcKgvRdbOYAaGJ50nc8/AieR/CTvd2XMkExaX4uvMwc2e/14ejHWZ/+bLoiF DNtjCXMUOYx/O4+r1Y/Gxn9+s8UHJR+9fhz9wNwvF8aTKoQWgc7UooC+0f7YDrvV lY3nt1HIfoKgsZsDs38XogbBk4oLvWqUOsYao3toNrPKYG2nj2A403xJ9dIEh3cS loElHnowlegOpXRTFJ2l8BoXNgLefNTU5VzbzNf2/CNAs/YPFjpf4l7dfpx4GfYk yDZtJdfnbZbbsY0nPxzwsw7MQiBsB10BPMQWDJQFXncILAqU9A== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-10-31T00:59:35Z" 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-31T00:59:35Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-10-31T01:06:07Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "7275" uid: b5f572b7-c17f-4a73-a615-4d7b99270270 - 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-31T00:59:22Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"93dcbccd-8907-43b0-b749-76bee625b8e4"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T00:59:22Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 93dcbccd-8907-43b0-b749-76bee625b8e4 resourceVersion: "3084" uid: fd585c63-926c-40c9-8f95-8efcd5672b1a kind: ConfigMapList metadata: resourceVersion: "9948"