--- 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.33 creationTimestamp: "2026-02-23T14:17:23Z" 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":"3214b791-5395-40fe-a9d3-5b57e0371db3"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-02-23T14:17:23Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 3214b791-5395-40fe-a9d3-5b57e0371db3 resourceVersion: "2691" uid: cf9911a2-259b-47c6-9fa4-00698a50b5f8 - 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.33 creationTimestamp: "2026-02-23T14:17:23Z" 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-02-23T14:17:23Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2687" uid: 2a32bde7-2dd7-4436-b675-9315889f3d91 - 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.33 creationTimestamp: "2026-02-23T14:17:23Z" 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":"3214b791-5395-40fe-a9d3-5b57e0371db3"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-02-23T14:17:23Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 3214b791-5395-40fe-a9d3-5b57e0371db3 resourceVersion: "2686" uid: 3b4be676-00f6-4340-bf5d-3f5eeea2621a - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIIOClBKKXG7AswDQYJKoZIhvcNAQELBQAwNzESMBAGA1UE CxMJb3BlbnNoaWZ0MSEwHwYDVQQDExhrdWJlLWFwaXNlcnZlci1sYi1zaWduZXIw HhcNMjYwMjIzMTQwMTU1WhcNMzYwMjIxMTQwMTU1WjA3MRIwEAYDVQQLEwlvcGVu c2hpZnQxITAfBgNVBAMTGGt1YmUtYXBpc2VydmVyLWxiLXNpZ25lcjCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMXW2BZ3W3oAcVs5DgczY+b7zLzUvGmj 3YSlcvbBxjEbFeX0oAuRyNXmIJRg+sfOmt/plQLZ7f4DzUdfKCaajJuPSSlXUYYD yDlBdxzK8EucCnInmU/tnAxF4HFNWh6ByggosGE6wzYyJhTYhfn2OMkEA6yz1li4 1YHmTrxiX+Zj9GcDaGZq0CUc00vq2hXkizYWMCw28/xkcIhr+WBmNbHdftGqhGx9 7xndb3SI6F77qNuw25pF6MwMByPMO8C6BgMa2JxFVVyYoR/zcQQ5CmmvOc/Fs+no cYKc0uDZXY1HhXlr504BoeM915ybggKikblV/WxlIHhSpAnuwAoIuV0CAwEAAaNC MEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJo5 oaBjziR1ysD5HNCgPzM5V7C5MA0GCSqGSIb3DQEBCwUAA4IBAQA1IWpyz+HGAwg+ nwGQi/tBNFhdvkcDwZqxAK7K5DtmxMY+J6E2B8IVF3KRM6INlN87a7CFGr/N2ATD sIEfmbTGblq738ric4POO/lVGjBR+iByqvp/phvzARTnbcSs7ZKfRgQ/r4zgUONy Nbzk3sjwIkgNRPT+5HZUktGTYr9M+RwU5wwYIHFIGmtYLkK99LyHhAp1jT63WDiY C22K85eKhkAy38aZxWlERYiOBUsjab6XmUzy7Phf2KWURdxcZJY37vhbvpPnxRqS lKh6z2AO/OBEPfYUhK7xulKKRsMiyMi+5PhuVF3RmOdaEn5CMWTXuBbjiFXkQXve aeVDh2Jk -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQDCCAiigAwIBAgIISD7oEcvsP9swDQYJKoZIhvcNAQELBQAwPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMB4XDTI2MDIyMzE0MDE1NloXDTM2MDIyMTE0MDE1NlowPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA07aVsLNTKH4w pglqZ/7S8vd8Z1Ga4FLVO/w6zIDAVgX/ko07roo78jFXnbRgFakYwqvicY4cVcXp bWvcVrf9CA1oT0GxHinukLyTaOT8GrHcgngkSW3DGMkvdvm7b2UIc5wOXFcJZau1 iicqXCGW/EHkjpKLC6JAokWkcGY86nxkAyPoJG4V8mGTfxUPZjxuPcWMwPYcLwiZ /2Oy8gc1rNKbrMNEnsl8wbRBFvsZJrVdgXJcdxW1AZsp3pxBbPb9/2scfe/QORDh IxscTOL2BggaMYhq9aIvbNDY7aEMHukP3okhbWS/+RoEBde+xcD1KfRanbQI1G/Y x6ibLFBL9QIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUfvs4HSVLEFyenWQWACw8xVo0Fj0wDQYJKoZIhvcNAQELBQAD ggEBALDN9GXnMVyNxou3vh97eMSE3oQJ2X3mLxtzNJH/Gge8Hr+HOJBcIe6XOzVa vPvUVhLTGfzERL7wLDVfifE87Wy6BBY/y6yRl0alVjHELe1LnGlWlQkoiUlwdFh0 fHGBbmEGbVejeiiFSc76/dBdaOwTA9l2l7jy813pH1hwDtsKUiTUcnpgBrU13zbI tde37mSPZCk1fJgQQW0bQOPceHT84c9hZRdH7UfpEGOjCjyZcCva2IQ4USZi6QPU dlG+0E4f2ZgDj5kWsrwMahP4F4iUluvdYNj8TTmb8sAfMnSAa1HG8BFn3XAPorlV gQ9a3YtQof2f/3k5fW6hje57NUI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIIMUC32Ka0240wDQYJKoZIhvcNAQELBQAwRDESMBAGA1UE CxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2aWNlLW5l dHdvcmstc2lnbmVyMB4XDTI2MDIyMzE0MDE1NloXDTM2MDIyMTE0MDE1NlowRDES MBAGA1UECxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2 aWNlLW5ldHdvcmstc2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAw7XJ5wTWPNyPUIQkW4yrzU7eRamkAJePEIYyA7mZFqJCwQsrXEHhpmQBlLAc Dj03DnouGTaDmAAvZwPbXmnrNdwsCC3inoS7KB5S0gtz5xgXRMQhOUtXLYeSry0k SLAUgMc5lPkG9rtCgGwfY/CMzmhQ6OJVn99DC1p166Tk+Oq/CFql4xtzJONyfUsP ybpRp9UMTm8IfyxlZnFXik3c2znV7GCOLQXAANEqnnYsplENAysQvjUaYycTKowK oQYajQdikGLR9gk1aVglwybzRK1NOqlkxIutrlzfvUtuVxmShdB+8bIhodtN+P04 s9DrGJxGbo5/jKSpYDXwtbVQDQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUXjcm6YSI3Wh9HF1rsuPwtJr2HV4wDQYJ KoZIhvcNAQELBQADggEBAFRx0KaJK83OQSWoJVeMsW7uMiiNSZGcCOvo2IVqHm11 qUgMpGsaG59Io5NNxEdK9jmQ00JO2SESQ0rOu9IxfuruOBS6v5oqgiZqpsHwft77 OVXH9A8hzT0CL8TyKEM6hZ/vXo+qTgqpflg29zMVoUDVCDs+UTZp4E6b5vrq7FsZ 2gHP0jxNSyx3N3EZFU/CLeCGw1MikOyxZ1TVRrPOO1Aa+vGWdtk925iMCJiqBRp7 jd9ZBX8ug5I9ybrTwIl8T2uY0RjWkYjWfOsJOAzD+ozWv5A6M1NdmDLqxPt9euFK 9BVR3r33l1Su92AzgjSSJcUDAaJon3uSVjJCwVM66uA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlzCCAn+gAwIBAgIIMXt+kR0T9WUwDQYJKoZIhvcNAQELBQAwWTFXMFUGA1UE AwxOb3BlbnNoaWZ0LWt1YmUtYXBpc2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1y ZWNvdmVyeS1zZXJ2aW5nLXNpZ25lckAxNzcxODU2MzAzMB4XDTI2MDIyMzE0MTgy MloXDTM2MDIyMTE0MTgyM1owWTFXMFUGA1UEAwxOb3BlbnNoaWZ0LWt1YmUtYXBp c2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1yZWNvdmVyeS1zZXJ2aW5nLXNpZ25l ckAxNzcxODU2MzAzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwxAi S/qsAn2KwzTeIbwJCymJs0x3qUFawjzUet60MeNRhJ4eCjxl95OgNr6Q0Wy9Aqdj 3jeKK/8JW9mTggbJCxo/Qck2ni/eANsRNemmii7NTUGbuhoIuE4d797Q+ODC7fxB Nr5q0T1O2EO0rxmWZQ1V1Ay1Lli7ZxJSFaoFNm38IGfq3h6uglyHhQKrwJwGslBz w3RZ1gNLvXGxgoCQWTnc2FY+lcP4OFH6DwsIW9q3RfPTcxKta0vG4s+ZMAd+MG3X 9qfwWYcGQKVkzCW6mvzKc419cTKqly5e79zZg9sb29wVTAggyenCUa65DSWwk0Hc xcUgh2d69MFx58i3eQIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQUp3hGHhoj4TzxmKnWhHJDjoUkjegwHwYDVR0jBBgw FoAUp3hGHhoj4TzxmKnWhHJDjoUkjegwDQYJKoZIhvcNAQELBQADggEBAF58J5U/ 1AosEFnsZJMob3i3Rzh2CJ/0eqAzOtP35ep7nM3GFb3SwS13oEt30oGzCajWlOE/ wsIsuMAYmH5dze1fQQ8ZjSBgrnG/jqLf8Q9gPl80VM5bRtpXPhzYgqlIVOyXTSI6 g8E90RzQuYqzinPSMveLxQE5yFEcIQinOSpNicnTNf9iPdZT0bCNifQ5JrLdyC9r SxCcI2zwjTjn6Ru4q4jHy81VuPDUkFqPhJmOqt7Y1ekZEcL7y+wFrcipQg/g54lw 9kBoG5gzg4LJWSoTJxyeoL7U4wWDnrRSnGIE1uRQsGRoeJdyhTVOTk731+Lvylhx GTnx80qt7jzOtTc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIIbXOlKO20AQIwDQYJKoZIhvcNAQELBQAwJjEkMCIGA1UE AwwbaW5ncmVzcy1vcGVyYXRvckAxNzcxODU2MzUyMB4XDTI2MDIyMzE0MTkxMVoX DTI4MDIyMzE0MTkxMlowIzEhMB8GA1UEAwwYKi5hcHBzLnNuby5vcGVuc3RhY2su bGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6luiCcv0EcOw9cAB vyubLRqwBJvjMQxFCEMdpva2Gt+YXCW+oaOQpjD4iTfKaELV0itoB3qNO48m3Ihl veagxMgT3KGdMy5lppLtO0jNIBXHg4oTcnW2lMrRV+RjrK5qF8K9J/KTrMtCB5ef s3o8T01E4VWs0ISTo/pIvbobG7pG8WEXu9ljDx0vXBr1vyi0BqZhgs5GWECTsHnp xKXogEWMjISrr3zAMfXYcTAtZtxixUN4mKA+C8YAMN1SXfoOR6+UPeuIEAlgjooi Dp7DXEVRkes91PqdK0rP1Eh0twHF7WvTIW1h1IEv1b+M25PwAIviKJE6I3xgp9mM 1P57TQIDAQABo4GbMIGYMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEF BQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBQ4mXiVymiYe1urCZCZq4zEno5N ZTAfBgNVHSMEGDAWgBQ3jiMZukUp13oPCJtxEjd5ZChCNzAjBgNVHREEHDAaghgq LmFwcHMuc25vLm9wZW5zdGFjay5sYWIwDQYJKoZIhvcNAQELBQADggEBAAowt93L YRJcJ1+OFsVu7LETCaxGNFccC9qpHRtXy4c/BXn4MyzSByPizoytuyWsEeMRsMed i/sp1lQxh/MxJC5LhgkCHxQNORIIUGwDBVLi7KZ0JeXDQW/wm4dN3kIVPZTqlWuq dlYJC7nH1LOhH3YC5v3/HiDOt+54VTkGI6LsEEM8kXxFU/Ur3j7S0VbKOHsJy/FZ TxorktRYLRXBx4BAk6sPRHrB5wV3yFl11lz2sngEmwpEPMwpySagukbYkYhEET4M G36duQSsH6G3Mqxcy1bkwHPSiEePHrHQnHzKe/NPGjInMYaBphz9ezWyJZBeJmg2 alSuKe2TQVf+cWs= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBtpbmdy ZXNzLW9wZXJhdG9yQDE3NzE4NTYzNTIwHhcNMjYwMjIzMTQxOTExWhcNMjgwMjIz MTQxOTEyWjAmMSQwIgYDVQQDDBtpbmdyZXNzLW9wZXJhdG9yQDE3NzE4NTYzNTIw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDr180xUO4igDBvP9SfV05n ma08vXnXGuGxTwdHSpCN0toj5ib9b+n8fTXg60XBr6OB7ZJWt/IMa+yob87ZJL+f nCofbaP96C3Lj8vU3u7gY3Gohr3K0EABAUk3bSH5j6agZdjtpDQpgkZxHrv3rIus IQncWWWiwg6ccUUycwkriMSyqv9TRI0JlKkSHyCUi4Gc4uzhPDjtdlMBZOZ9N7ZN SsWtzGkFWolR1yud5WS1w0hGbhllml1+c+/a+iMwW1WV4Bajkpt2A9eTkVcxSUTy 49qDz/2OJag7kZNvkuod3j/bHq7ajX++8B/ILw9sdNO4KqncF4jg5ZtiGJHjx/+t AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G A1UdDgQWBBQ3jiMZukUp13oPCJtxEjd5ZChCNzANBgkqhkiG9w0BAQsFAAOCAQEA WZee5GDqQHCTDTA0aP8I7LsbU7jyxAnME6MFE8FIrepJeLQCCADZBgX/02O8gBaB +G05D51bGcIUxS2djoMwloo1Q9wERgcuylNmAZWrbFoWWz4rVT9dNPSWHUz4fhV9 rcBubdniyGO6d0GQ7h5ZVuYpEFHL63UYXQ/l0kuY6w1ZauIuPpsJB3VJmvMYQRrD FS6pVz6d5OcTJLS8RjmH+ZQlJByk98Ohp3TaaEX6lD706LiAbI1cUb2msNboR5DO w5FrMryQxXPEzuSS9/eyT3pSkOyGt1uXw/wVh1Sdjlzquk6oIapG670q2ZdDJSSz Sp/cubCZgUENYJzpG9Ph8g== -----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-02-23T14:17:21Z" 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-02-23T14:33:11Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "12243" uid: 15554c54-d9dd-4d5d-98e9-e5958823557e - 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-02-23T14:17:23Z" 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":"3214b791-5395-40fe-a9d3-5b57e0371db3"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-02-23T14:17:23Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 3214b791-5395-40fe-a9d3-5b57e0371db3 resourceVersion: "2693" uid: 9955f2a3-844d-49e4-8553-0ec912bea6aa - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIU57LuUpgIS0wDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc3MTg1NjMxNzAe Fw0yNjAyMjMxNDE4MzZaFw0yODA0MjMxNDE4MzdaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3NzE4NTYzMTcwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDR/ryx47XaoPQQS76FMThNSmjr+Nst0qd9 VpKZ1sWLILVUH9DvC6JAqchaj0Gs8QsV327ZGJb6WTx+CP4r8qQK4Hq4Grie5l/m SGV/qHYmESgfKkZEaYCaSk3VRxnkPvHzeYjGhYQ/iCxKKveIuRNjnf9PZc0vee+P dcTfih0WmGye4iFUo1IPpyw3Ziu1mr6sfIEUkM93tzL89ogo6FYPyoGBd1a0/v/r X49gsAxzSpPW69DMK4PZJqtKNmUjeAUmCsrq2AY+IpmkyNhwiRDxcnS9cZRf2SDa MaKXxr1frzBNzj0oV37XUmrfKTyyOD8UZQo6h/FxYSu03U3FioHHAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQqtGdB VqUg7d8Vyh2tx3McgE49tTAfBgNVHSMEGDAWgBQqtGdBVqUg7d8Vyh2tx3McgE49 tTANBgkqhkiG9w0BAQsFAAOCAQEAod4V8BosKMRzINcnST4+TYHu4AdgbEmvbvz6 8b2HSe+XIgyiJG2fm5AtUJDC4CYBxDBfHjsS28a/PgRZiJkJqDv8KhQC7UWTnAVI wGiXaWOuNORa1mD55fxLBEQFh+kKQEzWfz/G/m7vDsK27KaCZZcQlRccGkdhlJpe WrYPszSMJen+y8j36AlUbLN3qDPbAtF/LWg1uDgC4jfNtJsDluvzV/0I0GIAswTt qOWzPsCwfR3IPnnj/TrGr/3yT1aKRVjyJ/Ihk5NkX780+PNHyDgsYoBI7N4vtAaP zXBhyKTa3p4BoWq1QNm/ZFCr2o8/A0TNfY5MqxYTXsu96sMWew== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-02-23T14:17:21Z" 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-02-23T14:17:21Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-02-23T14:18:49Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "4876" uid: eeb00ee4-305e-4dff-ae1f-c98319d37196 - 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": "debug", "log_file": "/tmp/whereabouts.log", "configuration_path": "/etc/kubernetes/cni/net.d/whereabouts.d" } kind: ConfigMap metadata: creationTimestamp: "2026-02-23T14:17:23Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"3214b791-5395-40fe-a9d3-5b57e0371db3"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-02-23T14:17:23Z" name: whereabouts-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 3214b791-5395-40fe-a9d3-5b57e0371db3 resourceVersion: "2692" uid: 798d99aa-fd7b-46a4-9033-a7ef3517eabb kind: ConfigMapList metadata: resourceVersion: "54118"