--- 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-11-03T19:32: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":"61e44b55-71d1-4558-aa89-ea9ba3dba9ad"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T19:32:46Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 61e44b55-71d1-4558-aa89-ea9ba3dba9ad resourceVersion: "3203" uid: a6d8a6a0-eaed-4188-a29c-30fc7ab05324 - 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-11-03T19:32: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-11-03T19:32:46Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "3181" uid: 5dddedff-e6fc-4909-9793-ac6aff507e75 - 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-11-03T19:32: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":"61e44b55-71d1-4558-aa89-ea9ba3dba9ad"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T19:32:46Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 61e44b55-71d1-4558-aa89-ea9ba3dba9ad resourceVersion: "3180" uid: 2cccfc37-6dd9-4ddd-b364-1d88ff844912 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIBl96x4TAG4gwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwMzE5MzA0N1oX DTM2MTAzMTE5MzA0N1owJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuJthfu/MZ6ue dilpxfJFm7OklWAl0bwe+NbMcd9mg3FUfxFM5WVQc7E1Pj1QjcE1iPwrWjNvcML6 F4ZarhmPzdtjnHXXAn5OK331NqJW5Hb90EWKsTq067ocYl4S/aK/iB/1qsye/Lxu BB01WswrErAeB3GdMqpTkS8U5wsxRnzRgN439eBtsWKPHq9u3TR6J1NSKc6fxbnK f1Zb3Oc/to//RyeplzMfHmE7zFJCp8FADUnuLQLlElvycC9h+CqhoFasprWjenIM jbsTNInMjLOaXviejRloSdCVufFKcFFIHMQ7Nb2uzfYXCuZbF+bENNQ5mIQPqrYQ yM8qMjJXjQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRA4r8A4KRVq74tZwjegoCyGpxLMvT2GwB239Iq7G67cOnTsdic jo0gXqUA/G5i1Fj+GoxYXgYFX3KZ1IdQE9R7hzANBgkqhkiG9w0BAQsFAAOCAQEA U98+efR4p6GNIGFKhOFY1t0BqKLQQ6wvwlC+5Y+ko1s1lmUKbOk38LEWvChPYN2W jLvpziX8PmGamburBGkrp8UoIA7RCT8UTRsWTqONGQt5NhwXz9BKAVyGYVk2yzp4 ZCmisH+4mFhccMpwhOxOnubsoh9OWWtD4JzomgSZcRYsFi2CxHGNahSQNeQEWO6q qbXggem2HOCLNokoapPO4+HO6FTK+zqYj8WFTontcSijxdw3ZEFq8CnsbeEoeT4U SRJZehKKJIKEKeEo8mKH2v/cNqlr8Yl3kmY3NyBg6i5zrJdHP2bkkprX2JGcuRvv NjlMcRWcEAj1j056bp4O5w== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIcN/0Jepxa7wwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwMzE5MzA1M1oX DTI3MTEwMzE5MzA1M1owMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ANG2OP9FjWFhGMSAXUD1ZoKZxUC9J7YBANhIcxZMV1VdAd8WfSQt4QVgP0uQiL/d aqk8tAhKpdgovS40RlNU75UUgHbstbdDU5WPd0q85NrlcCWqGj8Ee/F5GuzM0DHo /WLWGaNJoJpGhF6hnqwSFz8UxqQxKXMXAcNVad00MrziXTJouSrafS+z88OLIGP1 ncz/kpai/a+vqhhZQ1KUsR7Sh8OSsMczaahmpJbVOfp7Fc1jBVe1UWGi0ingw86U PmUMi3/Y9xgpB7yhNKl8gEv/TUR0Jno985IlW5Rup150MHHj0pCB2In4gBszrFq/ VWlQX5eaik4XfAsBKI4XGGECAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRA29oVGU96+bP1lJMuH262boRhevx/xSWgfBkO2Fy3ZYaVe4RRwNkZu6OL z7HzLq5jw8WOCDmVEYj2Gz01CGidczBLBgNVHSMERDBCgEDivwDgpFWrvi1nCN6C gLIanEsy9PYbAHbf0irsbrtw6dOx2JyOjSBepQD8bmLUWP4ajFheBgVfcpnUh1AT 1HuHMD4GA1UdEQQ3MDWCMyouYXBwcy45M2RlMTNiMmYwZGUzMGE2MTU3OC5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAdlw1f1Y68kHn gjoak8Cc8Xh7emdYCkyPg5QOLboxla25ih8bkT3lzo8aa9wrqJmqhrz+OZCBb39s BSgT3rbNp+KmgbiEphvbpG6k6edljwMKZ10lJfGtb+HlTLlZPpILZ+6SDzSeJe5w gRticA89Ur5pgHt7IhiXSbZaHGHJxUGCPQOlDqpz1aM9ymovddK8i2bkzZh1jT5/ 7H97qgI+TZVfus5aJ7/LBqUtIGs8zzgDT6w946C/Z8+wPWz+E6rG/usCsiiLa4AM N+W++A5vCtbJwVR2OJQhTry28TE+ilqsmDMx8ScQYOC2MKdRa5RSW5xT88Lp73WF B/ha/nYx5w== -----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-11-03T19:32:57Z" 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-11-03T19:32:57Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "3935" uid: 36e8b13f-fbd8-4b94-8ebe-e0a8898942e3 - 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-11-03T19:32:46Z" 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":"61e44b55-71d1-4558-aa89-ea9ba3dba9ad"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T19:32:46Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 61e44b55-71d1-4558-aa89-ea9ba3dba9ad resourceVersion: "3247" uid: f364dc01-a64c-4233-adef-e86a30b03bc1 - apiVersion: v1 data: cabundle.crt: |- -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIZKHJTIqDecMwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzczNDc2MzAe Fw0yNjExMDMxOTM5MjJaFw0yOTAxMDExOTM5MjNaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM3MzQ3NjMwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQC4Q5X5T91NQA7aZkGY8IWFXzyj0KyABnsi N6NmCKUpqaF5ssC1ZZmnXe7RP2wVj7F5DzHIBKB+F/ZCsMKlYSI9Qrkr449UJKe5 +GHJLKBESRF60PvZxshLMTZmkqNaqHPc9pGQj6WRcFaCa2c1FGYwJy94oU3Y6IgA QTNU4P+xq6nu5iS/7ca0+NOD7fFmu+mk906fCAeqIPgL78tfWAZVTGATtpyB+RDh CuNZbcftU2nAdLal9dxGC1x/+T/srjiKMlmUoWycPUbOUHGWy/3Mxk3FlOrIKc2c acM16Z4Zp2YfTz1k/RZTv9Q+/gsIPTHr+c8RVF3Gp4BKZMSYtxfVAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQjoSTu XYP3nTj1cMsBREZtgGVRGTAfBgNVHSMEGDAWgBQjoSTuXYP3nTj1cMsBREZtgGVR GTANBgkqhkiG9w0BAQsFAAOCAQEAUKHaoDiWzTHP1fCwdh6IcEy14G4ry85fbC5P 4LD5urSNCw2a/vnRaytH3xjtahrSRr/KCOgRk3c0SG9BMOKd6Ysh4mr9v3YjEbD8 qa9nvD5r86EQMlZzi43DiTlkfezNr8FCp0CYkSbZdHc3C6TXWA+XAr8fpNfNTzyZ X9RkQbJwUhkzKfn0gg8CYBxFrExM3QLs9cbdBB8wJZdobp+1SQBFjwDMygt67ChU CV065ddWJLOtFje6OoW7cvZwaHnl6l0/CWIEnMqljApwz3cw8dtoGndLxBMLXLRb U5f4JrhsXeKDZPmq9Ve2tnlIXDU7/Jzq2//aOr5JScwTl0glOA== -----END CERTIFICATE----- kind: ConfigMap metadata: creationTimestamp: "2026-11-03T19:47:26Z" 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-11-03T19:47:26Z" name: odh-kserve-custom-ca-bundle namespace: openshift-multus resourceVersion: "16913" uid: e22b6a90-4cd1-419d-8e44-ea84d29d6bc1 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIZKHJTIqDecMwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzczNDc2MzAe Fw0yNjExMDMxOTM5MjJaFw0yOTAxMDExOTM5MjNaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM3MzQ3NjMwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQC4Q5X5T91NQA7aZkGY8IWFXzyj0KyABnsi N6NmCKUpqaF5ssC1ZZmnXe7RP2wVj7F5DzHIBKB+F/ZCsMKlYSI9Qrkr449UJKe5 +GHJLKBESRF60PvZxshLMTZmkqNaqHPc9pGQj6WRcFaCa2c1FGYwJy94oU3Y6IgA QTNU4P+xq6nu5iS/7ca0+NOD7fFmu+mk906fCAeqIPgL78tfWAZVTGATtpyB+RDh CuNZbcftU2nAdLal9dxGC1x/+T/srjiKMlmUoWycPUbOUHGWy/3Mxk3FlOrIKc2c acM16Z4Zp2YfTz1k/RZTv9Q+/gsIPTHr+c8RVF3Gp4BKZMSYtxfVAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQjoSTu XYP3nTj1cMsBREZtgGVRGTAfBgNVHSMEGDAWgBQjoSTuXYP3nTj1cMsBREZtgGVR GTANBgkqhkiG9w0BAQsFAAOCAQEAUKHaoDiWzTHP1fCwdh6IcEy14G4ry85fbC5P 4LD5urSNCw2a/vnRaytH3xjtahrSRr/KCOgRk3c0SG9BMOKd6Ysh4mr9v3YjEbD8 qa9nvD5r86EQMlZzi43DiTlkfezNr8FCp0CYkSbZdHc3C6TXWA+XAr8fpNfNTzyZ X9RkQbJwUhkzKfn0gg8CYBxFrExM3QLs9cbdBB8wJZdobp+1SQBFjwDMygt67ChU CV065ddWJLOtFje6OoW7cvZwaHnl6l0/CWIEnMqljApwz3cw8dtoGndLxBMLXLRb U5f4JrhsXeKDZPmq9Ve2tnlIXDU7/Jzq2//aOr5JScwTl0glOA== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-11-03T19:32:56Z" 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-11-03T19:32:56Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-11-03T19:39:25Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "7043" uid: c8971772-1c2a-4ba6-9c5d-a0efdf36ce93 - 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-11-03T19:32:46Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"61e44b55-71d1-4558-aa89-ea9ba3dba9ad"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T19:32:46Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 61e44b55-71d1-4558-aa89-ea9ba3dba9ad resourceVersion: "3225" uid: cea279a9-3093-42b3-a6a5-e3448a027a5c kind: ConfigMapList metadata: resourceVersion: "156417"