--- 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-03T13:57:17Z" 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":"28230520-5aa0-4040-9c1a-433363771f86"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T13:57:17Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 28230520-5aa0-4040-9c1a-433363771f86 resourceVersion: "3915" uid: ca7c9956-1e9b-4679-88c5-2b06756c5153 - 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-03T13:57:17Z" 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-03T13:57:17Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "3909" uid: 7df9ae3f-f7f6-45aa-872e-f44acdae8e1a - 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-03T13:57:17Z" 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":"28230520-5aa0-4040-9c1a-433363771f86"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T13:57:17Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 28230520-5aa0-4040-9c1a-433363771f86 resourceVersion: "3908" uid: 457d1f9e-eb90-4c1f-bb33-d4d31efaa443 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIQSsILVBy8qMwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwMzEzNDIyNVoX DTM2MTAzMTEzNDIyNVowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7zuL5gEfWu8Q 3AbdU9CcrBubu5AndYLny3uSEqh0vV3G7AeGD45qE0D/CKVrbmTpA/8/iwCRSB2e AAF4BVfIReB+PluJ5VcKHquzhy71ypRTKMG1FwcbEzK8TUhFn6lnGhGsP+6uMLtU BYYWz+XZuUrz+3Ka/QhCbvB2hqQCEpDQAxaSuAFxzsCkNaRn8nQjfrTxW63Gl4DG dvjPnxC0zeMi7X4k3z+0yC5WYT+AXAWERDPjQLpFo5z6+qeWNbV2oX4+VTQE4P2n WzIWRSzZYN6nKHcTrHTMD9rMCldkyTxseAstA83G7cEPIq5t8mgvzLpf5jJ85JOV ouk46CI/RQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRAqCUokCJod24OUYve91jHg1xqs4oPPJu9LGejMiy2GFy0hVnE rONMhGK29fy5XTy1B9hIAdiXlyqDPMuC9pd4PjANBgkqhkiG9w0BAQsFAAOCAQEA 4cnoOnGLuFaZRTt/xaHdp88BWAUZcNRtGKL+jDBgs4JptBuQ8FKf5YEaHzXehr4n ezq8/VOzyyMoih6eyUkEqn2tJK6XXqVvmWL4IBqdGxfBvPPqRbTaMeNu1PGX4pYE N0PRL2Wi4VSecYlA5BFzN3lRAa8/Eqjnw3QfZ2soQYgc8tO8NEJNheFcXvRSgevz ZhM/is5qW2jgVblvo0BYmuLE8vyRokx0G4JbCUQ1N74Mtga5VHOj1oKZ2izxC7df AI3CnT6IPvES9L6twyzkF1Kg1bc0VRDtY5ejCSPaj7OhqQVHhq8q/FLnkOICo/S4 EVPc2D9sDiGHQDQ5Vck45Q== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIMw0gMX1XQY4wDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTEwMzEzNDI0MVoX DTI3MTEwMzEzNDI0MVowMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ALgh01eJPlMABJnRP/bYa404WXNt3stuWEvk+a4HQCuaV36mqv62PWLpQ67V3XkU 1nOJYip+8hGXGJfq0aEy+eUiLqEXDTLAQy68fSujiKfqLLPkqkMlIL6lGHPn7O2c mM484Moq0+UB0JumqKyE3p957UHxAx629gkH0dX6J2JePk5Kmpdq0oVFmzQATCMg gtiZH5ifvtSHXssqI/adRqnQRXAb31lKoa3cDmvxQpx39wjMiE9nMZi6jHhZ7RA7 gdVWSPw3oWxcTitFdJTNVuItja0BIuWwxgSPNq1pC/cO5wdWSwK8HVuyUQV8DMa9 nnN/e+42Sb7MzvXFn4pSYRcCAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAzfKi3t6wdKPubCVKmDUKFrEXHCfkG7YNyNSUfRQgX7VUqeT3i7BPpWdd voG2Jwbk4P0WDq10dAN1AORH92KDQDBLBgNVHSMERDBCgECoJSiQImh3bg5Ri973 WMeDXGqzig88m70sZ6MyLLYYXLSFWcSs40yEYrb1/LldPLUH2EgB2JeXKoM8y4L2 l3g+MD4GA1UdEQQ3MDWCMyouYXBwcy4zMTNmZDNiNjY2YjkzZjIwZmU4NS5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAijY1qhpZagtv KBJ3H67SWKwj3sr9VAnRO0UzVTr7Brm4gPuBzxT+1DgcOT425NdFoZVZu8wgA4Cj J6/mG92iz87SmRPMnV9AzEmA6WPD4bQFq9rdJ85DV2V3nG03ILLakSGaFbHEGBza bl83M0fmWa6x36X7ccQKSHOoO6sB2q3PF6Za5QzSeHL4Cc1vcplwtnq+4JbpidhH A6Y2XQcnmWBftiTOgcZzRlC08o6F0h5FLWkkeMz2D723lplYtavJwgGYPmXGlGBc EHh8z0F7IA544HNMpbDsLuRcUEJwugvmi1od4SDoUXiiBueMl6JGOlef5wKYH4yr BW7Ly1kK/g== -----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-03T13:57:14Z" 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-03T14:00:28Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "5427" uid: 37e5103b-6ae8-4fbf-8619-6d76b41a7dc2 - 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-03T13:57:18Z" 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":"28230520-5aa0-4040-9c1a-433363771f86"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T13:57:18Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 28230520-5aa0-4040-9c1a-433363771f86 resourceVersion: "3917" uid: 19079059-a345-4181-a6f5-1b7c80ba0ad0 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIfil4wuTZqWQwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzcxNDQ2MzAe Fw0yNjExMDMxNDAxMDJaFw0yOTAxMDExNDAxMDNaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM3MTQ0NjMwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMHRGGtaiXFAe93bzD8SeBFfEOKXvUmzUU JxhtIZsdFY3EAqrNSOOQkT7HzspxX3Xc4xAy8RqZSkiAj5cKjLHBg4vH6TX+OhgM 56ywJykiD5YZq+KpgvUEdI9J2F7XQnp6gQ6vT7JxP+XFhwHQASTP3ovX97TMpPF7 BxZAyc2hfNbpc+kc48esYNVWQqJ0lIjW1RPNrAWdlalt2F+eColrKu2UXmyameVt nePEwey1Q/ZGPPOBABOKb29paPIpZppr1U2Ov7Vm4FxhbsXQjofF10owEfMZq6gH W+Qh4vUpaXYqoJgx/c/1Mj55jjbLC+B7XDVp0YsanEAZMdoGWaHbAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRd9vyI qDhX0J1PeGqx8d40S4B1kDAfBgNVHSMEGDAWgBRd9vyIqDhX0J1PeGqx8d40S4B1 kDANBgkqhkiG9w0BAQsFAAOCAQEAkCGywUE/uBSqlZBMGJggcQUu3fnwE3rD+OVg cJYWGeZWjy1W+rAWLEZccXxAs1pVWw/ZhUfRavG2AmDQsR6cL+d52Gv24eAIFcE9 4Dztlp+c6Jd6i1FV+tF6Nz68rUMR3hVe3WKE748Vt0yf6/OHLdlkI3vbw0qa4tXx PgnplHdWxnpLgdKFSvkTdOrGNaEPh728lKhv2kGBZDe6M2HNrV4KigSq/xNjITo+ wo3xqI/63ukcOsJsvIWk9/xlgqSJhQ7/AA+4+sVD6hzeG/eHY1mwNEE48WoORkU8 /01s1iljjhcvuGvnDaAbHCYl974GpawxqBmf1seJz/lG5r3z/g== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-11-03T13:57:14Z" 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-03T13:57:14Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-11-03T14:01:19Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "6853" uid: b1b2e365-6b74-4459-9318-f186fa42e49f - 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-03T13:57:17Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"28230520-5aa0-4040-9c1a-433363771f86"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-11-03T13:57:17Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 28230520-5aa0-4040-9c1a-433363771f86 resourceVersion: "3916" uid: eb8ebedb-e88e-4b9b-89bf-ae4c4d11d6bb kind: ConfigMapList metadata: resourceVersion: "10052"