--- 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 "$RHEL8_SOURCE_DIRECTORY" ] || [ -z "$RHEL9_SOURCE_DIRECTORY" ] || [ -z "$DEFAULT_SOURCE_DIRECTORY" ]; then log "FATAL ERROR: You must set env variables: RHEL8_SOURCE_DIRECTORY, RHEL9_SOURCE_DIRECTORY, DEFAULT_SOURCE_DIRECTORY" exit 1 fi if [ ! -d "$DESTINATION_DIRECTORY" ]; then log "FATAL ERROR: Destination directory ($DESTINATION_DIRECTORY) does not exist" exit 1 fi # Collect host OS information . /host/etc/os-release rhelmajor= # detect which version we're using in order to copy the proper binaries case "${ID}" in rhcos|scos) RHEL_VERSION=$(echo "${CPE_NAME}" | cut -f 5 -d :) rhelmajor=$(echo $RHEL_VERSION | sed -E 's/([0-9]+)\.{1}[0-9]+(\.[0-9]+)?/\1/') ;; rhel|centos) rhelmajor=$(echo "${VERSION_ID}" | cut -f 1 -d .) ;; fedora) if [ "${VARIANT_ID}" == "coreos" ]; then rhelmajor=8 else log "FATAL ERROR: Unsupported Fedora variant=${VARIANT_ID}" exit 1 fi ;; *) log "FATAL ERROR: Unsupported OS ID=${ID}"; exit 1 ;; esac # Set which directory we'll copy from, detect if it exists sourcedir= founddir=false case "${rhelmajor}" in 8) if [ -d "${RHEL8_SOURCE_DIRECTORY}" ]; then sourcedir=${RHEL8_SOURCE_DIRECTORY} founddir=true fi ;; 9) if [ -d "${RHEL9_SOURCE_DIRECTORY}" ]; then sourcedir=${RHEL9_SOURCE_DIRECTORY} founddir=true fi ;; *) log "ERROR: RHEL Major Version Unsupported, rhelmajor=${rhelmajor}" ;; esac # When it doesn't exist, fall back to the original directory. if [ "$founddir" == false ]; then log "Source directory unavailable for OS version: ${rhelmajor}" sourcedir=$DEFAULT_SOURCE_DIRECTORY fi # 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 cp -r --remove-destination ${sourcedir}* $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.18.35 creationTimestamp: "2026-03-20T08:35:05Z" 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":"f3437cbd-3241-4219-9ef3-5788faecde6f"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-20T08:35:05Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f3437cbd-3241-4219-9ef3-5788faecde6f resourceVersion: "2952" uid: 5ffbbc25-83df-4f4c-9252-7aa739c89e78 - 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.18.35 creationTimestamp: "2026-03-20T08:35:05Z" 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-03-20T08:35:05Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2948" uid: c956c86a-186f-4197-8cf1-a05f92f38b86 - 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.18.35 creationTimestamp: "2026-03-20T08:35:05Z" 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":"f3437cbd-3241-4219-9ef3-5788faecde6f"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-20T08:35:05Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f3437cbd-3241-4219-9ef3-5788faecde6f resourceVersion: "2947" uid: 97a05586-98ad-425e-a86d-04d5b4c00281 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIIFcGDDXSJ5HYwDQYJKoZIhvcNAQELBQAwNzESMBAGA1UE CxMJb3BlbnNoaWZ0MSEwHwYDVQQDExhrdWJlLWFwaXNlcnZlci1sYi1zaWduZXIw HhcNMjYwMzIwMDgxODQ4WhcNMzYwMzE3MDgxODQ4WjA3MRIwEAYDVQQLEwlvcGVu c2hpZnQxITAfBgNVBAMTGGt1YmUtYXBpc2VydmVyLWxiLXNpZ25lcjCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAKt451NKL1mTUeEDZrMmwGZWuiHsseuj pXIDlwMtH0jyUEh1t3lpNdfQUKino6Soo+I0e2fWTVaO1Q2r6G4xSXU45wbovASj zdTWm7NFKUC8jgexqEqRELmyxF76a+YCTNMT6POvkELaOxqlsjo6oz6kytz201Pt Sxjj9Rsqm4n/E1Rmd1u57bXb/k0nmTaJhS3YtzLrCCLHS4xiBE+vJjyCFW0CN6ll /7Haxab5tVNVBh4ZKXifbGhrtjSbBUL6PCZL6eeY40Omy1U3qPj/xdiLlIWUzzuR MMUcWjLYApa3olesfdq76RYvQZAXKRGGhjbhEtv9PRirBoK7nSxeZokCAwEAAaNC MEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGje TtO/ZA6VYpqCHUgWHjJLGq7XMA0GCSqGSIb3DQEBCwUAA4IBAQBjwY7wA6q9fHP5 3GR0g3tOeNEluhtphWufRLgvWOC+mwTk3GwHTNnOXiKMVEDKUEYEnluaXPL61md2 X46W3dW5ni+oJsGffv21YqgC6CD64L5DiLjRBGZqDqYymgOUDcfXNcKc04pKGalV n+9fuXKOGpylIqDTQXhj3GViDPpsvEmJVL/aqX+5Q7OXXxRagYW4sfHdBjd/tJKa fYGJROVDiP6KMhvEgMTHiFR+2k+p2aMUG9zOrA1+NJENrl/2Fx3g2tKuwP3QT/bd vm1H/kfm5mfRElAE600rPFNiyiTxBy5jiehsbZEx1q3bS48PWfEYOUB1op7zi51q xhlB2Q/9 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQDCCAiigAwIBAgIIcaiCA4s5WXEwDQYJKoZIhvcNAQELBQAwPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMB4XDTI2MDMyMDA4MTg0OFoXDTM2MDMxNzA4MTg0OFowPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArhWsOPI2t4iC Vc16At2avEuvJVRty55FU3EByatRL7C27i9PZVkmvqM7lGbVPlnrvx2q/h3xVg15 nJOIcZ/Bx3aQrsachqHSz+3P7PjDL/heBzsV6f7vVQsKfoz76/MTff9AALiZNxJO C+/XBwhYpXZuDD/OjQZ7gCE88MBoj22744k+NaqMhqp2BeDRRoA/g703ZyNlPEi4 wH6Y6FwnLlYiA49aKDc+zwawsaNSTMcHQHC8DsOf07r92N0p6gL3sfk5aGs5nOr3 ZKgBVJIYF4pHYzfpXYAVarNG+IeR1dJtGzL5PWbt1iaYTt+aa0UwOv0hi3B0GG9b LffJp49s7QIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUUM+4afA0DVIjCR6c2wZvCr3tgkowDQYJKoZIhvcNAQELBQAD ggEBAJHRUmmVYC4H41HvPN8VTq1FheLqh4a4RF+n2hsvnduTBFAOQXVZErv0FiIM Bw9D37BJSsIeKa1y7c2HRBVmA8lsRe9hjKUH+5X8CZwSTnMSkEAi8911XUf622lB 3Xi4x0ccms7+2F4mkcjW4LHxwv1PKAY5pkZJIPMNHdy+baY1VenaOInco/6v/uSy OitKkgQtrfUa4v43J5oilPtPQ9APcupek2C2p1ckp01MDQqd+QIPdwyx4RuedQUF hnZf0X0y8tVPaQXoj1oq54XtOenY/rrHtuBgrNSZSOTZ8ynudjPQ+Wi9296S0yP3 RfTRzegTMddfiLgzohAHjx/TwZQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIIDEN+QVd96nYwDQYJKoZIhvcNAQELBQAwRDESMBAGA1UE CxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2aWNlLW5l dHdvcmstc2lnbmVyMB4XDTI2MDMyMDA4MTg0OFoXDTM2MDMxNzA4MTg0OFowRDES MBAGA1UECxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2 aWNlLW5ldHdvcmstc2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEA0ZB41s5JxUlSOS8PPJry49Y6cn4WCI/PIXau/sARDgsqJapV4GEbsaVSfdaX hR7e1geEhDzXUl0tsIuzle8TP0sdMMZabcgF58L0PaiweVuD54ofYRxp+0kAnIzi W/xEYyEyW4zxawS9Z0F28m+8yUDsMEQKoAvVhgAPXrO6daw9dt3ftPTMIOeRmSMo U8GMIX88g+EPXo6+b7IC+KydPUpcLJtVsAD+iFc+7knF8qIwH7FmwNh5dtGiZkPR oLXE/U9myRlSQtE7KoSJjOfJ98dTHWa3BT2/o5GB5dnJ0iAMd9zYP4K8QaW8BKxX bQ2rZ9aWqfKN4asQgchsQ4X2EQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU1NyV1EaZPxsBrJS58wJtYJxg1OUwDQYJ KoZIhvcNAQELBQADggEBAEvrqT/fI84X/V1OvC6SvDELL9Isv4N2Lb1reBr+wLKx xRqn6Px5AbsYtkGAHvtssVjYpM0Qvstwz+tP44JRP1R+2y087qAn94M4nqeWBECU h/0sp8WUPil0gWPEiTUOKFj83Jp90o4cPoyNtcqEsmHJteFG8Z6lOY69tgVNxGW8 qT4NzWgtDJpHeuQxqF125De02lKmB/SpQ4IdazN+UZbwo9eYVKnLScd5PMtE47Tv cYT98S/o8YuGuHu5stip+sCzqhU/r1+nzHjhjVMeb1DkXLEbAZyxjl6HZkMzEkNy ZEdW9vdQn/IUiSRXRJSKkHVag/7S6TkAwpIOXe2WK88= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlzCCAn+gAwIBAgIIJ3hhe/0ps3wwDQYJKoZIhvcNAQELBQAwWTFXMFUGA1UE AwxOb3BlbnNoaWZ0LWt1YmUtYXBpc2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1y ZWNvdmVyeS1zZXJ2aW5nLXNpZ25lckAxNzczOTk1NzcxMB4XDTI2MDMyMDA4MzYx MVoXDTM2MDMxNzA4MzYxMlowWTFXMFUGA1UEAwxOb3BlbnNoaWZ0LWt1YmUtYXBp c2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1yZWNvdmVyeS1zZXJ2aW5nLXNpZ25l ckAxNzczOTk1NzcxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxU6/ lwjB4CMRRJsXPzsMz+jeyh+90GiBbNKkGWo8SKNcPnkhH7ICnpYlNok5V7jaF7Hh Cf+m9fzYGt6BNfdWJZkMUNIajI3evI67OsSLX4uOx2/Z9JdD3E5nw+Xkah3/mQ6P VHUDvovu4vw83CqcM7iYEnV0qj5AiSBo0Lj8OGWOJgdb9TVHCDrjnpHaVZCNbIe6 7ZJs45QIFpyA1Vl9rd/x+VFbPTG9TDMbaIBPdPIJ6E/iNgbL8w6fipxQ+GuuPMyG 2S6ZCBnbVz7BljYYjl/9kgJRyW9Zij+W05+muKccdgZ1xlb2HkaPMzoJu8m3KWnR 6Acw0VEwYQtfdkKX5QIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQU/D6iiz0X7bNhNTq6cNJNS4jtfRswHwYDVR0jBBgw FoAU/D6iiz0X7bNhNTq6cNJNS4jtfRswDQYJKoZIhvcNAQELBQADggEBAK9EcVJp SIYd1UjDb8qrM0xBYmJSexnuDsIAT10/SuDrqg72ySCSEr67a8Rw6aCr24cLUOzG rsGdAWZ9+fTJ9oftmtL/J+9ogSEKXkf80zruJTUmQ+6B5y0pgFKyHBnTT39qDjH+ zlCk1MHLZ/WFqESZGQbG8Ij7QdO2TdeX8B6q4rZAl90iDAGmEK/vDadJOhRQF2uP Df/XsIerxf955+COGe8PRio7iNx1j5ESkkHNxNgkybmfiFqV6rez3xOJFIgpKoLI t3VzAidR1MvUXfReY+iJy7/r1hFV2Kbd8uel9UoQ4bvUIcokRmBRzHyD2e2QxQry qBlc1A6YVmuJB1Y= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIIEA/mX9RioxwwDQYJKoZIhvcNAQELBQAwJjEkMCIGA1UE AwwbaW5ncmVzcy1vcGVyYXRvckAxNzczOTk1ODAyMB4XDTI2MDMyMDA4MzY0MloX DTI4MDMxOTA4MzY0M1owIzEhMB8GA1UEAwwYKi5hcHBzLnNuby5vcGVuc3RhY2su bGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAo12bHUjZs+Rg0eGz vmSNBwN4yPxLVB4D1rAjcaod15YUUVakOZBzhg8Qkt8UXB0VO/ghut2JwWdbMxCq k4e/w28imoZEtGnIhGqA3AVA6OEAsabjnKpiK99U+ujwaNHzDq6Um59wW/G80UUI SV9X404KkZ1SpJllTgVgDVBU5T+taKwZbedeEQpPP9oI5r9mIFmqxU3Sw0Nigp1t vecv5ZrEuJdYORTiXdfy0svf2PQO+NEugb8UaFTKGHNkm7v5tOVoQyDYRk2vJ4c9 pSxiubPAjUclkUjfia1vqGbJc2cs9K4HGIDv6Ngb/l28K3vdV5RBW+KSz1vFpXxB NQ6a0wIDAQABo4GbMIGYMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEF BQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBT2YNf6kxsugBZpy4PUfIkthDVM bTAfBgNVHSMEGDAWgBSxy3zwNKwnkyqESBn6gfnLSccc3TAjBgNVHREEHDAaghgq LmFwcHMuc25vLm9wZW5zdGFjay5sYWIwDQYJKoZIhvcNAQELBQADggEBAFXPVOKv rnGWY6POSBaYKQEw28uH3nRMC9gPJJ1MArbHd7DH4yLno1f4v/0rYuyRJAoLcrD1 5Y8DXxT1mUI5BeCwT/cE97P6x3tIWScBkcLQxHaSrFLc/5oJ1lNka9KEyU2frVxh VDHwHoRvmH2rM8gI8r4gGIGuxbeinxnRCiNsBBku4iHK23djibYNAx/MGGIjFOc3 2SBsryOlq5ozw9GxiCSqSe/pRqoIWDctcIliqC78Q2nIdC9QWn/m6qh0A/44TnKE wIBWiXRBahY5S5EJ6hSj5MG9zUmVzS13qL2rvkFEZOyFiLo8zXhdFp8NlgPaiSf7 PKzzsbV8GChQ7Lk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBtpbmdy ZXNzLW9wZXJhdG9yQDE3NzM5OTU4MDIwHhcNMjYwMzIwMDgzNjQxWhcNMjgwMzE5 MDgzNjQyWjAmMSQwIgYDVQQDDBtpbmdyZXNzLW9wZXJhdG9yQDE3NzM5OTU4MDIw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCpafK0MFSg//7LHoQy5CRK IOF8DPxDcGHN/j0mavdGqbvSl/wW77wfGLc6zEBv/PTsTj+pvLB31oYc81AmE30c qAkPzVJDRRQ55sRXD4hgCvcLo8Lmnba0iwTNXg6R2hMzewMZIrR16vMu4tZ7+8b2 xMCNakFBFhfUiGDNqcDj1uh3n3HLsoAVvYMS/Acn+vG18PadUqmdM/tWUvPGpnxB opi9FXsDWLJTOoRsR7uCrvJ4KfiL+kMTmpgzvwuDvuP3ly8AFvqj1wXTc/+vPHWP qCU+Qr7/g7BCLkIPdKv3f3lP42Fgbf9VYNqyAj4OHGsho+2/SJJxRhZwdA+1I94B AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G A1UdDgQWBBSxy3zwNKwnkyqESBn6gfnLSccc3TANBgkqhkiG9w0BAQsFAAOCAQEA QezVr8UoEkg2FQWLhBnMmTZGQLXwA9G68hg3jeSOOIEaarHq2vufVuh01zeNoppk APpWygdp8NQTj4jCjCuWOH1MM7YVft24OlHpQPPuk3zuD90CLRGHzckPpT49F3V5 8qScJIWEOcb5AIRjQEw1AxSSZ6BXDvSGDUUaN+eBm74nn2UuPzP653mkVBLr1FA6 ++GkO6PcaiJ9SCbQBSLry8xrEwoh8nfslUaaSmFYzj5eK+iMZBtywyDMwTh2Ys3a 3BfGkKD8PX52MQXOQkrlFqi4z+KU2b2ezgbKEwj2iAFtC/W0xkitWKWUSfFXiSui knbR8iJGrFAV1D0Oiv7W+A== -----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-03-20T08:35:03Z" 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-03-20T08:39:39Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "11190" uid: 6fd17251-9b3f-4fc7-99c5-2a002cb2ccb7 - 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-03-20T08:35:06Z" 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":"f3437cbd-3241-4219-9ef3-5788faecde6f"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-20T08:35:06Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f3437cbd-3241-4219-9ef3-5788faecde6f resourceVersion: "2955" uid: fd5bcee2-8016-4221-a7f8-7f80ab9b06a5 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIcm8LSLgzbTcwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc3Mzk5NTc4MTAe Fw0yNjAzMjAwODM2MjBaFw0yODA1MTgwODM2MjFaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3NzM5OTU3ODEwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDVCkCxuuykdnaPLKFBvhsZ7ZN5CSod1tap Ri6X6z4GBOcDBF9jI4+ZiRCZwrzyw8lvc6jZEhipNRkd+hA6rFXY4eH28ZmmIPax ZC2K8pM4e9xEpEH2Tb2Fr4HEab5DxOntrJPRUt8LNJz8LUAcDy7G9hBq5lTgS/j/ SATCgISJT/WVOLhMs0HSQ+ocL9GTcq2qb1cZcXEfJxtOM3daOk9Rj59PJ4Ejwukp TbfrhNdDNnh8MGpgIPbcLMnWY0xe+0ecOcugZ+9AINqYO8MQUPI/cItB30vgjACm fVCRbM2Sun3f5Vdve2tvBhkPnyVX8q5tm3gEvqisHo1wiDumG0KdAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBR3GMX7 x1QVh9UdlpCJUri9HdeG6jAfBgNVHSMEGDAWgBR3GMX7x1QVh9UdlpCJUri9HdeG 6jANBgkqhkiG9w0BAQsFAAOCAQEAI4O1LvmU74oFg1PgQP/cQm+3qJ9ZG35ohg10 1HSsQZNT2HLWNQZI7iAkzGL8bbWzSgKqAl1Ub3bac5Ou78V5hICad1K3MQtYDNnZ 4s4JfgsPQHDNBD3senasWJXZLdpWDH4qefHxyLCU7HSp9If3ASR0hd1sn3yVxwrg EcL8lYjVCDNYsjio820WFb2kxN2FkJHD77OC+Kd3Cq0tyebqUPn4FxpjiVOvzbvj 0o1mwisdxDVFuGn2DpJ5frydpKTBfWsWw7jWulqikW39wa5ao5RflJI/KcBlYZFv Xh+HNUwXP5iJFt453BYdq5gnlMYJ43sovqLJ/dVMb+Kba1+RXA== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-03-20T08:35:03Z" 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-03-20T08:35:03Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-03-20T08:36:34Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "5571" uid: 46a95255-4b00-4d18-a8a7-decef15ea3b7 - 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-03-20T08:35:05Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"f3437cbd-3241-4219-9ef3-5788faecde6f"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-20T08:35:05Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: f3437cbd-3241-4219-9ef3-5788faecde6f resourceVersion: "2953" uid: d6384bfa-b999-4563-93d2-89118850a566 kind: ConfigMapList metadata: resourceVersion: "77144"