--- 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-30T17:49:46Z" 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":"2da645a3-048e-4af5-adc2-8e6182d4486d"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T17:49:46Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2da645a3-048e-4af5-adc2-8e6182d4486d resourceVersion: "3305" uid: 28183965-a170-4d6b-9af5-2891214f7b6d - 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-30T17:49:46Z" 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-30T17:49:46Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "3278" uid: 3da75bc2-99e1-46db-b030-b4cdb39462b0 - 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-30T17:49:46Z" 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":"2da645a3-048e-4af5-adc2-8e6182d4486d"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T17:49:46Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2da645a3-048e-4af5-adc2-8e6182d4486d resourceVersion: "3276" uid: 6f356193-ab46-466c-98c2-6b644051ceea - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIULf2CH45qjYwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE3NDczNloX DTM2MTAyNzE3NDczNlowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzDf50LaSsQHN MC8DnustLV3WV8xiLDkoyCVgFBRjDPtv/0+iOLQuXfrobphNMLqEgbZp38XA5zNF 2jaYGJUCr6zuxAbzDFMaVbbbdCMDXavVLbawVLmFl1kahvF+N73k3sTMEm2g7b6D Q29RJIcG8/vM/FMIUg8Rvih+hwy6OvLVYezdorBoTgrmz6PLghp870ZTmiI7gFSH 7HfYZnvyNKCMx51KOENeZuryM9I9lbKC0AKOlpcJMr+xGa9wniJp+6PG6NRpMhcT suyAye/pDYQ7R7B+ClVrYac26qtQIrIXrSkSYHZtTatabpG+OiMiYcCQsCE2zK6a +P3Xt9HIlwIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRA+umw4nRLLWKaD4XWrLnnjKe2lB7B4Oz8S2ykcpPZakk1KV+d TtkI1/0vM7WyDIY6s86G59IouwczHFfWyKrKxjANBgkqhkiG9w0BAQsFAAOCAQEA vIAsJhVYfVuU3CZFI0Vdglu+g5DTmIyL28rwZD9fJQ6AthlODYjDPZ8ozZgM7IPg a4nmtxaOd+uMc4YP441cGMHmcS3lK2RdMfpuWIFHpMGIxQxlHN9RMtiCd7tFpPxs aubIszlxgpjuNTEo5iQnSWb0ijiME5CwxHezKcpwgO3ps39+UB4fj5TtjtBVZtsk hl3GgiFBODkty+uY+pAgHeUZOpPTv6+wasKL6wOPJX9cy7CXjVThufPArq5Z2ioG d0DG+Woa8IumY6RQweQ+/i8eFFxCjtYmjok5SaGAeWeZ+VO4n9JV4Cq04BEtvu0F izvz/qBShqKDjvygn0xGlg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIRATQy9zCQKswDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMDE3NDc1MVoX DTI3MTAzMDE3NDc1MVowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AOlqpPKS846qsHpxCr4OnilHEPI79MScmKSI1sCjdFsd+2x6T2eGOM1mICrWn2BD 1/rtcA/TobWU+b9MRpY1tLkhe5f1XctL5yHAu4TSFoCD6U9nJHtQBp+olDL9H4LF 46sYcE1niFMdmBZTYJF6NWtx0poGLdPmmuYRf8D7Z1VI43uyDRocc1dIbNJfBpvc MmfADwEHDHmJa2oxfs89Zv76wE84pOU0hx5TRBVS21stE7z57xizlhtV8c9+4jBg P8JglUHQFCJlS6q2G8WeK4AFrDNia5K+zt4Uaxo9ks0wMIkulk4Tkxf7GOKoShT/ q9Jxvbu+wC6NmClY8VpPK7cCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAm326p6B4MAN1UjWSGYzU97f2t3W3qCryoGDXDY1GEGVFpktnTXwJlvjD ySMC8LoboEebdO1d3txU4bOaUDfBAjBLBgNVHSMERDBCgED66bDidEstYpoPhdas ueeMp7aUHsHg7PxLbKRyk9lqSTUpX51O2QjX/S8ztbIMhjqzzobn0ii7BzMcV9bI qsrGMD4GA1UdEQQ3MDWCMyouYXBwcy5jYWFkYjZlZmE2ZGExNGE2NjJhOS5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAXjd/+MzPCEkj 4kOYlD4uv0r7g8YrUoDu9rwn0DNuNHFeFOwBuwe3OypkqJQcAUn8ugQ8p0t88ji0 VL8NAvQdsneI3F5Dwc08bUZIOYqBWq0g5//bUMwBYVU0h+6BfL4txOMfjmuhSrHn n4dy+OoRM2gfI7VIG3GCP3O2usGIJMaF6toXpQ+NoFpqikM+0BS1uAMOb+8Z/bZ5 UszdB/wzkaOWFIGLV1WDMSbw8+o+adXtagbZAA1WZtUqtazFR01MiS+ffUN436qI 2mHKrRWnyJQGbWYN2JKSSY/43+jq1x83ITPr6BrgXKszbklP82L9kfLcdp/erd92 S7M+hlcXKQ== -----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-30T17:49: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-30T17:50:03Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "4104" uid: 92901e89-5f3d-4d13-91ad-f4fe13ba3eb6 - 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-30T17:49:47Z" 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":"2da645a3-048e-4af5-adc2-8e6182d4486d"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T17:49:47Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2da645a3-048e-4af5-adc2-8e6182d4486d resourceVersion: "3353" uid: 83c278aa-8929-4951-8cda-915fc63e4d8a - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIYIkZoImXKlgwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzM4Mjk4MjAe Fw0yNjEwMzAxNzU2MjFaFw0yODEyMjgxNzU2MjJaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTMzODI5ODIwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1Y/Pko4mK/soWw7HLFiqs29ythZvnCV7v a7u4YchQBGCGLybNZxIYPUA8JHlF30Sx9kxnTEs4dubrsezKfucR+K3PzL7rphCs RL7tWvCctJ7C1JfT/u0WKZaY+Nopo74Fyu87cksREzgXbiP7gmpfSpk/aIB1g8GD 1nsAdnR8C3wTemZPdmZoOEINQkR0T7h/3uWpdQB5icCx0rH9TxtCSRXh3/vfb7Nr rizxUXvgYQEb/LMDZeoP+xQ3qy9ssp9OfzM/vQeT2p6d2euw1ICPqEUpM8zw2RBB g2gK6XPlgJi/blqfqglP85jNm3y4sAntfK4jn1mLL2CGgNqx/sbFAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQZQmTY UzJ8jJQd9hR7n7OxVzH3ODAfBgNVHSMEGDAWgBQZQmTYUzJ8jJQd9hR7n7OxVzH3 ODANBgkqhkiG9w0BAQsFAAOCAQEAi3ac5QwQ7EGHKtKSnYXC9/7CBcBZyglYk7Wp J4Hwbmr5jjWaWUrcq53oq8pfCGj1JnUPFoUDYd+8DXiYZujOvh/g+QVrfHHz+MN4 m7SfjfPtMvDiIPTB+O0SbfFHZimp3JRCB8hPt0rIxH8wJwHzCR3eM/YH8StcwnIM JiWiKwSvzJETKwCN3NXh4wrxvo/ECB2HmJ+XbAcm5HcPbbsP4QIGjkBJF877SZXB UvCVH71/u7eiYyVsfNGfRA9G4p0FlFOuylsPJwauioAyMEd/qKWUfTbJbWNNeewR fV+v8kZgD9nMvB/nr7L9gJrN89ihPdaJmqddTsKRV39YRD/ajQ== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-10-30T17:49:43Z" 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-30T17:49:43Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-10-30T17:56:31Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "6911" uid: 32393cb4-1f6f-4c46-9ccc-fd8cc3ec3710 - 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-30T17:49:46Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"2da645a3-048e-4af5-adc2-8e6182d4486d"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-30T17:49:46Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 2da645a3-048e-4af5-adc2-8e6182d4486d resourceVersion: "3332" uid: 206d79a3-ec3b-4bca-ae4d-8644e1cca8f7 kind: ConfigMapList metadata: resourceVersion: "60062"