--- 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.21.32 creationTimestamp: "2026-09-07T12:30:02Z" 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":"69d62058-051c-497f-8e05-64f9e5be2971"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-07T12:30:02Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 69d62058-051c-497f-8e05-64f9e5be2971 resourceVersion: "2638" uid: 1abfa9ef-60b1-4684-b229-3c6104e66d85 - 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.21.32 creationTimestamp: "2026-09-07T12:30:02Z" 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-09-07T12:30:02Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2628" uid: 12b65731-6ae4-4cb3-a170-60c777b4c9b3 - 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.21.32 creationTimestamp: "2026-09-07T12:30:02Z" 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":"69d62058-051c-497f-8e05-64f9e5be2971"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-07T12:30:02Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 69d62058-051c-497f-8e05-64f9e5be2971 resourceVersion: "2627" uid: 5b15bdf9-9a76-4b96-aede-449577f3f3d8 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIdIRxmO56f4IwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MDkwNzEyMjczMFoX DTM2MDkwNDEyMjczMFowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoE0uoxNvE9d/ 2xuOZ60iuU2oeOpjTDgcWdbla/0BkNyYa4590E5kCcq2JK0aQW8woLnZHGK5TWJQ s/qvOH9GY3txntiFX7gaXc1nzI+OTHvwZMYz+OvoUIRsgUAaTFw4oiFQJFiHeiaW R9xYaumcBPFWOE3cqK74PpogABOCtEG1mPyCYPA/rBtaNRlGNCJWUyiesmE5xiXO xcaijCCFvq9WpQ1D15mnWtUICjGrD71jUcXOqMqaG1GHSTz3u40h4EjPR/j49Ift Z0H2BY84a8cUxjz0bQcS80n9wpAAasWi+JoSqx/iC+OUkEKlCd5L/a7QpwA3FZ8V Ak58S9x6pQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRAzPvZdnF64aXdGN7e7yGppq1JILconYAP4xywgPb1pPfak3Fy HSte7R2HPzTT2oRFZdsPlzI5aj3fWsI5DxF77DANBgkqhkiG9w0BAQsFAAOCAQEA TCPudkpVTMWjR/XavhrN48w/h12ibIaT4VmpktLduPrSMavCArYUlkCP7IV24DtN xqnXsrq6Rf0Z8pNs3KdUm4mN2/bbk8V/7e2peVW1xG6TACM3MjjW2Vl/h5NCFiej n/gen3AqZki4vkpnBeLgEuu7wLU/nfVqH9Yu18ZX2YEHKY+f6wXB5gpwxB+Vc+zg 1/cTnpyj/zUyypzhXqStffTNCyjjM1BOoRdwai+5igspjEPCeTFA8mcW5pEA/0od oimOApTWX4ZdIzbviOLE5AIZrICBJ/k7tUaOj//SGt2yixUjv3Vs7ngAB7FVh6mm F7QSF/7yBDtjxkjsxWCRlg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEADCCAuigAwIBAgIIIC6VN10ShL4wDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MDkwNzEyMjgwN1oX DTI3MDkwNzEyMjgwN1owMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ALxDCnyehRCBIVcPc6RK5o2cFyuEDuIOrME0Z3X3QMyPyqRNNeaREamw/MRvv+hj 2rKR90DLeYl4ZF+s+vSOMGeBKYgNvwRf55QfNG6nDp6sWOKs+h4lV5WiqJZe6Hg5 8O+NUSSMgCDmd2xrgHbJAY1comXqGrvxohYNxfhPDLMD2XQeFgQpo5wYa9GyQgrC n1XAC9CpM3m3LzLWkM2HW4Rqxh8V94o8DMd04xEPiaRP0p/xHpEkhh2SwfISjhQB d2aznmiKGfse6Wb1okA3fau8n7Xn4Kxk9q3NMVSxlenNdByl0nNsl/Hw+SMymC82 8OTwXQktUwP2S85RsDgw6a8CAwEAAaOCASYwggEiMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAlAsxvcrdV3LQt0vGnO8h8d20cFxGGn+KGaKRfWi8+6pkoazXjeLjLoFV WobYBzHvDUxbFMjs2ctXnm0/CV/BTjBLBgNVHSMERDBCgEDM+9l2cXrhpd0Y3t7v IammrUkgtyidgA/jHLCA9vWk99qTcXIdK17tHYc/NNPahEVl2w+XMjlqPd9awjkP EXvsMEsGA1UdEQREMEKCQCouYXBwcy4yZWUzYmZmNi1iNGFiLTRhNjQtYTg1MS02 MmFkMTFmOTM4NTMucHJvZC5rb25mbHV4ZWFhcy5jb20wDQYJKoZIhvcNAQELBQAD ggEBAH0u4a2IJhCY4ATWMBdsDWZgUoZ2sbN/6u5370nzg2crNE414qOc1hvaYX7A PciU0uBNDLy1hjRzudXFOUrlRwNxOjQwj4VXs1wAQ1esJEUKlKB+pZs6XttVRrKM wTRnLPptaY5cPiDJgzapktRLxQJoZHdx9npx+lXovWcUkW0R9a+b/jECrTNWn8zJ ji/c8Yo6YPooMOrPp1Kf5R90Yp3Y2+mvjEi5PJslrJhPrF4iW8D6wwaR+RRHv95o tQ/YdAya/phesqxCuBjd0KGh4Hfn2OBYjo6UbjGwqyrd/SL8visEbYz57MW9d5Ya oGfqnE+E33PrpabTWQTTEeZ+ml8= -----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-09-07T12:29:59Z" 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-09-07T12:30:37Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "4317" uid: c89f4411-751c-4a50-b158-2a56bc399278 - 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-09-07T12:30:03Z" 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":"69d62058-051c-497f-8e05-64f9e5be2971"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-07T12:30:03Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 69d62058-051c-497f-8e05-64f9e5be2971 resourceVersion: "2647" uid: 76a39c76-27e2-4a6e-9c08-b49aa02f705d - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIJEoKSt0avaEwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc4ODc4NDU3NDAe Fw0yNjA5MDcxMjM2MTVaFw0yODExMDUxMjM2MTZaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3ODg3ODQ1NzQwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDLV17/NLYmcB2ZjVHeUVjUFSAIovYqy4K/ y8yyh8eJ6O39ga+WjkyxYDOAiP28nBoB8pt4lmbBYjsUhZiC/23jYx6iZUFarHUh 9dEtIrmVtxgiAOUq+gBUno3WWiZ8lCyTKI+FDPcz4XMJCvKIlZmOPMHl5gtnOpAY 39bs4RBVyg651mJsbN67Uh3cGOEYYetN+Yyvc9+M6nShmaS7VZYDD1v2zrat4P9g VYdQYZTwP1U+GlNJLtxtLF4HJHxUSgxb0FIixwGRq8lVybejnninniHS6f7We5DJ /mA5FxtCcg0Oqbwt6pSUk2qLLkDGEM+Ijt90Vinrmk5z6LUWpnGJAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSDTNzI 3pEAMc3HZ40/m7OlaatdZDAfBgNVHSMEGDAWgBSDTNzI3pEAMc3HZ40/m7Olaatd ZDANBgkqhkiG9w0BAQsFAAOCAQEAPavS/RusK0ftcHRBF1n5cvvDWUCBhv6i5iMt l90YkWYWCm1kvP1GlgeWqHwiWUMKEvQyzwEaIt1gYxjcJ993ENcle4zV3OoMqs8u rqRKIqfcqN10hgxs0VsmkWG1bf4EyIS7GwCtxs5rG9Vnz8FM1KXXH50L+7PK9f4L 6kSGJGGoOXpC27ChQQ6iLCvDUYlAke2h+OaGt+TGbVBYD22xTx4r49imHenC1ql2 K0jbYiBqGl7duBfpLNKuqGdize3k+cDRjU9XGYu45HHw7HCC4b35D4Ltmz9uT9bd v6d1vcs73MInCA0CiZriANNsznWlNnbOxDqltMdGUiVXYE2kng== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-09-07T12:29:59Z" 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-09-07T12:29:59Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-09-07T12:36:29Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "8098" uid: aa2fa837-df76-46f4-b4e1-9064ceb1a7dc - 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-09-07T12:30:03Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"69d62058-051c-497f-8e05-64f9e5be2971"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-09-07T12:30:03Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 69d62058-051c-497f-8e05-64f9e5be2971 resourceVersion: "2642" uid: 2927c3e6-b1f7-4b90-9406-c94f05bcec91 kind: ConfigMapList metadata: resourceVersion: "14800"