--- 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-30T18:29:31Z" 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":"44c8b3e9-cc73-42d5-8bc7-ac6fe9be86b6"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T18:29:31Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 44c8b3e9-cc73-42d5-8bc7-ac6fe9be86b6 resourceVersion: "2279" uid: 048ef968-cd94-4bb2-9554-d49a2534e13a - 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-30T18:29:31Z" 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-30T18:29:31Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2268" uid: 85757976-0ded-41f6-9b82-efdf99a5279b - 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-30T18:29:31Z" 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":"44c8b3e9-cc73-42d5-8bc7-ac6fe9be86b6"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T18:29:31Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 44c8b3e9-cc73-42d5-8bc7-ac6fe9be86b6 resourceVersion: "2267" uid: 4d2aba22-70ab-49ab-b702-5bd8ce416adf - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIINQgI7hpjveMwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE4MjcxOFoX DTM2MTAyNzE4MjcxOFowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxqhQ+RJaoK4Y 4ZVxlhpbopjBtRIgVLllEDm1MVf4Aw6iXo4YrdL+s2ornwf/mfV6CTABxmFlNkR0 6F9diOCS4YEkX1/I4X8eRVVfIaa5l+TYzkiIEBHDQaZXYQmbUNJBOd2kdnW0LIfm fDABqB8EnEt/T160UthSN2xKS9h2CAdOQ9YPw73OyhmAjGafpTf2WTzx2M8QzrqS Ugrq/XMIBpbaYzyfbomaN0pFoYcN1TVy8/tZVhjY/cPBBMDf69na5YHgZ6KRZHD2 hjG+4iJQUFYF7oxpgDCSB4G+a2VfyT31z2js9PLZIt/d6GuKH6JaA7VMQ2ozqnWo ZBwm+9HANQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRAt0v8CNumHAHtrlQBrf9CEjTQKtviDOFbMaCjzITsD2ZUkOUL /imNcdRmAE/OojaCAXwe+8VQAoze6KEpyT4alzANBgkqhkiG9w0BAQsFAAOCAQEA gzdx4eceXAoVkKWV/+lQ8jfaHQuKTrgykziOsQooWNPgPbZMr/GOgFmvyYa1bqBT 50pyV/vLjlxJ8zthmDliS4U/5nIotubPpkmAOIC0qWyIKd8qLrcyVUQhbtSsmVGn 1QsI3qnoBgnRd9L4tjc8/cd4bu2B7a+ZMM9Jd5L5msgsSNzFdRLQaagp2cTnf/A3 u/X2jTD/2FbCDTYgWSRVfiMlvY0k8M2dB0yy+f4EbkxqzOZxj9q0Lh6Yj9nAZ5jX 7pEG3WAeLGzUqwsbUMZlev+Lo2QP7kBWgaNSq90yiQBYu8mZuQ/zJ69oy+lV4wjp w8KsRPY7z3DGGmjSH8wFWA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIBvX8xeWhJP8wDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE4MjczOFoX DTI3MTAzMDE4MjczOFowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AM/nGdqfhCWk+RM8FcYYjGeoLzggi7wMeaVEtSGxGqGx3qXvq8/bKZ8Loeug1qX4 RhO/uD6kaIVEnYrxk520k3aE7/z0ZPvI+2yBjLMgYEv/C6/eW19An5OEQqjW0+HZ 0F45NLzzTxrf4FktjIWs8O27Arry/+JV5RDrWXriyke/ToU5KOfaZvVZjA5d84hD D/jjc0np5Ub9vBD1NHObEhsj1cbWI63urdJNpMkDlpLOFIF9uEagN158KdD5Ny0+ zz61gmYQOq/+OqRi443YNYbV8Ipejab6+YJZL2NfY7sYBGjYoY3sp9VdZ7z+oHZG YZmXiwYNhosHbgwisgH+jfsCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAG9bU1d12xeky2zq1XoUkkatyJ48ifwQFHorMBsg4F3T7AChP5r5U4rOz nHIJt8aYVYTmDeqoeWXULLZVbXaEQTBLBgNVHSMERDBCgEC3S/wI26YcAe2uVAGt /0ISNNAq2+IM4VsxoKPMhOwPZlSQ5Qv+KY1x1GYAT86iNoIBfB77xVACjN7ooSnJ PhqXMD4GA1UdEQQ3MDWCMyouYXBwcy42NWI2NWY1MzMwYWU4ZWUyZjAyMC5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAMApdNvFjd5sm dh/0Z+9Yppv7lfS4a0gAYqoLzWLNJJOqlj46XZzXtfkegOjvzy01Z0AtU/Qbtimw BnROmor9lUmU3JjXAT3BBFFy7L0bXKdVxdcpc2PA7pz9rZYJEIkqsc55Z+vGowdi I5y/VMMmcNOQk7SpDXBSbifCWesGl3A/uDsEAz4tSpu0EZiStdT7GqKfJ6Vayyil LVxysJY+SR04yRAs6fu+g5o9mZPOaaugP+c4w/1C38cK2nxy1P5TYhuzveCGcKVF 2R8Obf+OBAjF2niLGIMJgn5gAg41ZDxJGiPNgqtEzzsfqA1Cidn8lRX/gX97o6s2 inZeD+r2xg== -----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-30T18:29:43Z" 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-30T18:29:43Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "2724" uid: dd4b5079-a2b6-40dc-93e8-23a8dc51f9da - 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-30T18:29:31Z" 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":"44c8b3e9-cc73-42d5-8bc7-ac6fe9be86b6"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T18:29:31Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 44c8b3e9-cc73-42d5-8bc7-ac6fe9be86b6 resourceVersion: "2284" uid: 2f8e61f5-468f-455e-9863-e639c8108479 - apiVersion: v1 data: cabundle.crt: |- -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIOetUeQOXMocwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzM4NTM5NjAe Fw0yNjEwMzAxODM2MzVaFw0yODEyMjgxODM2MzZaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTMzODUzOTYwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCiMn85TKkDMximTF67JjPlxiN4dG2yDwOR QZzWMhtdeRtIY/xBRLNgQPQ8AXOoc574Wku27vSaOdzD/AohaWYrrlvY5xRGZTzJ Z7S8dmi1p391pecr3iHvdgB/yqdKJiY5zHN5YYWFbv/pCES4JkmQNdepONh3kN/1 tUmp2Isk0PmxF9qUW7BzHB3ZPEJXzsfKKRWVZTUGAPuChmIg4vjNKPDMkf2NQ6dQ iVoBrmsh4rxEnUAhMRPvLHF0qcIkmg7HPlZn5oFS+npHeke6iYHJsjMaBwioMVq1 VKZcQyLPrilbc0XX9vbV6JTSdtOe8LZ/NbB/hsyCWkKn80lgu5fDAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRx+MvJ 1cJmIpfCea7u4L2rG6Hz2zAfBgNVHSMEGDAWgBRx+MvJ1cJmIpfCea7u4L2rG6Hz 2zANBgkqhkiG9w0BAQsFAAOCAQEAT6zibboj1J11w2W4CBhXqnT8qAKPkF2cxIlx LHKJKyXJzSX/V706CCwz6w5yzTAW/GcOihlqjwhkKz5d3kx9acCL89pHwTzNt+6d 4ktVMKdtd/F6iZW0c8B13lCS5CFZZ6i5O5TB7EwRzUx/bvCC8TYZOW3106qevdRE 9A6jWjeOLPZy+JiJyoEeRy0M4KjcN8NLxoI0Hioxy90AK5nxDbNFK8oqJhi1jIlw eIbdhdIyiGgxNflvfbO+wxN5T05enKML5Q7jxJP0bidrsQfIEt10GRPjwSXZ/+wy pS0kWxa9AY+Ux+2upLXuq83V0GKoUUJUu2p/oYTdEZv0EM5tAg== -----END CERTIFICATE----- kind: ConfigMap metadata: creationTimestamp: "2026-10-30T18:43:19Z" 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-30T18:43:19Z" name: odh-kserve-custom-ca-bundle namespace: openshift-multus resourceVersion: "13521" uid: 1d31e0d2-05b2-45ed-8dea-e9e09ac73f05 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIOetUeQOXMocwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzM4NTM5NjAe Fw0yNjEwMzAxODM2MzVaFw0yODEyMjgxODM2MzZaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTMzODUzOTYwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCiMn85TKkDMximTF67JjPlxiN4dG2yDwOR QZzWMhtdeRtIY/xBRLNgQPQ8AXOoc574Wku27vSaOdzD/AohaWYrrlvY5xRGZTzJ Z7S8dmi1p391pecr3iHvdgB/yqdKJiY5zHN5YYWFbv/pCES4JkmQNdepONh3kN/1 tUmp2Isk0PmxF9qUW7BzHB3ZPEJXzsfKKRWVZTUGAPuChmIg4vjNKPDMkf2NQ6dQ iVoBrmsh4rxEnUAhMRPvLHF0qcIkmg7HPlZn5oFS+npHeke6iYHJsjMaBwioMVq1 VKZcQyLPrilbc0XX9vbV6JTSdtOe8LZ/NbB/hsyCWkKn80lgu5fDAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRx+MvJ 1cJmIpfCea7u4L2rG6Hz2zAfBgNVHSMEGDAWgBRx+MvJ1cJmIpfCea7u4L2rG6Hz 2zANBgkqhkiG9w0BAQsFAAOCAQEAT6zibboj1J11w2W4CBhXqnT8qAKPkF2cxIlx LHKJKyXJzSX/V706CCwz6w5yzTAW/GcOihlqjwhkKz5d3kx9acCL89pHwTzNt+6d 4ktVMKdtd/F6iZW0c8B13lCS5CFZZ6i5O5TB7EwRzUx/bvCC8TYZOW3106qevdRE 9A6jWjeOLPZy+JiJyoEeRy0M4KjcN8NLxoI0Hioxy90AK5nxDbNFK8oqJhi1jIlw eIbdhdIyiGgxNflvfbO+wxN5T05enKML5Q7jxJP0bidrsQfIEt10GRPjwSXZ/+wy pS0kWxa9AY+Ux+2upLXuq83V0GKoUUJUu2p/oYTdEZv0EM5tAg== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-10-30T18:29:42Z" 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-30T18:29:42Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-10-30T18:36:42Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "7171" uid: ec36dcc8-eaca-4402-b9bf-9048a989e3eb - 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-30T18:29:31Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"44c8b3e9-cc73-42d5-8bc7-ac6fe9be86b6"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T18:29:31Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 44c8b3e9-cc73-42d5-8bc7-ac6fe9be86b6 resourceVersion: "2283" uid: 69508167-ad95-493e-8b9c-60555fa9271f kind: ConfigMapList metadata: resourceVersion: "97287"