--- 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-18T08:47:48Z" 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":"7a701720-9781-4cdc-a637-2f91e6b4afcf"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-18T08:47:48Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 7a701720-9781-4cdc-a637-2f91e6b4afcf resourceVersion: "2884" uid: 406031f5-922f-4d2e-b766-684500894949 - 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-18T08:47:48Z" 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-18T08:47:48Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2880" uid: 6667228d-b93e-48d1-9073-17b59e8bb03c - 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-18T08:47:48Z" 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":"7a701720-9781-4cdc-a637-2f91e6b4afcf"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-18T08:47:48Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 7a701720-9781-4cdc-a637-2f91e6b4afcf resourceVersion: "2879" uid: 29ef38d8-c16f-483b-8415-a9745ec79780 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIIBMyFUgbZP18wDQYJKoZIhvcNAQELBQAwNzESMBAGA1UE CxMJb3BlbnNoaWZ0MSEwHwYDVQQDExhrdWJlLWFwaXNlcnZlci1sYi1zaWduZXIw HhcNMjYwMzE4MDgzMTIwWhcNMzYwMzE1MDgzMTIwWjA3MRIwEAYDVQQLEwlvcGVu c2hpZnQxITAfBgNVBAMTGGt1YmUtYXBpc2VydmVyLWxiLXNpZ25lcjCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAL0biisuRFlioDFN7d9lm8nzZoUugKk7 hiFcPkoAbaFN4qkXV7MagW8qBLQqCBDx6klodIJrrfcvEOX3cir8az+l3jOLxGlM TjvxNPsb9NuTqGmQdPGexkAqYSlGQSTx8lL36/GLa8o9VXFG/SV10iP86XdjR8Tn aWKsKgxyXeU/x+c9Cna7lC4F+itKXrNggmgFCHKSfheetct5FZc1IBguzEJqV6YA oa5akc+XNBMamBS64mrvgIzxOCQ6AMMXsUS51TShCK+zTunMUnDtq5ElcXq8MaSt Tqv4nO+D0NESrddQg/HNpN8VOSY0i/tKd221Uea9RLFeZk0NtvN/+QcCAwEAAaNC MEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFCsg n2jvhofAGVLYP2qnJuj2IBqHMA0GCSqGSIb3DQEBCwUAA4IBAQBO/XrwQdKmeViF dECSIcL+4beQ8bFR+SbDyjuqnnlJ5ysHaGRuU2b6dch5360fHt5spU9jbOb+G14y v1CuOK4Rr8p/Y92Dw1jYw4OEdSv+VLnag3plYT12hRwcsBUX0ECguZQimOFlo/wM q3Uk6cxm7ducl4TZ9huLKJzNm+JdbgiRMXwIH2HnRaF5OR+pnY5WV9L3qlxQqK8x JOo3OtO8GdGM15HGtUz949kUSqh52X8jvl+xlWinOYQiL6fT+7MMsNtq/Y79mYQ+ uI18Qkqpv4LCrT7olZDc3DODIr3QpHT6YAH7Vy81v1+H6k/JnpT2mirxedIHglxZ Y/PH59Wk -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQDCCAiigAwIBAgIIfH0Ae2CSDD4wDQYJKoZIhvcNAQELBQAwPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMB4XDTI2MDMxODA4MzEyMVoXDTM2MDMxNTA4MzEyMVowPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwN/fMsot1BO6 XYCxBGdqd1H2Ge200ggntusn17y3I5bEAPAPkLumX3s/VqsiKIoE9iDhkXmTLyv1 urhzd5nS9FKjHmmJy1tCXVieCabDrAew/qSuoG8p90PsUYUJ3wmIfiuWIEFNa63N /ySZcvqa4WB3y1sC553fSFq3BqBQZ2HYZRVujLxBnfdFKH7Fb9gAdvdl8wHZSid4 8RH2oev5BV9HzRut8Qy/qu6XIyT2uOlyzHINbTwf8n/dZKcgPp/2KLLRM0f20mtD FCXZ3GZd8On0R/t3H460Wr0G2ZqB0g5uaJPMAzSZd4UbhJGLKdj2mCtW4aUIOW6W vJ34tpJs9wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUeD17/wLzJcm/qP6r3hBpZ0ZY+XowDQYJKoZIhvcNAQELBQAD ggEBALI3xFiBATAtsJqi174bssPSvIYookxFvKR2pgmAbHOn+kFWXkYRf27opCa6 qWPC136JkIOBXW1RFfrrZeX96eyU/TH7pQSxffS9LfgIM+ktbRmgcWZLoTVb3KOZ LqaRMaFAZvSdWtITUtliZ8mrbBHRqn0MpWHiGXwldIJ1kQvuhFFvlxiFAvkhLFLK WQEDeceYqLo6mOkXOY6njfQgFEOLLI4hhJDQpiBAEOK+NgEkkBXi4ZCeh0vexvcY RzDh3vp4uZRItYHyFaikU2QZPrCGh6x9gVGb9NKnu9ZCaKJkBaxPwKJVcat8Voyj tenXa4N26UX3W4XmiMKo1wn1ruY= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIIYvdOlTRKjKQwDQYJKoZIhvcNAQELBQAwRDESMBAGA1UE CxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2aWNlLW5l dHdvcmstc2lnbmVyMB4XDTI2MDMxODA4MzEyMVoXDTM2MDMxNTA4MzEyMVowRDES MBAGA1UECxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2 aWNlLW5ldHdvcmstc2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAwYwS0WSi5HqC479ppd9oNVCMPxcOm2TwiddyoWohF3dC9ug26w9HIxDiHuAp Wm0JpdEXCfHB5lvBbBo/qos/hk0EOtrruKMBj65Kc5CsoZDFzKwxFTNSdDxqiAXT +63F9wad3QV6lKZ38F+kgWFdG1pX0hSx28oPTy6F9cFYsHdQVliQIJtm0OsRsXaI 4WRzQe9+bsM7QoTO0AkfiPJB4XvTE9rRoq88cq8MqlG7CS6pgQoXJ3/b8NyrOgOa VUcALnTGYW1nlA2URFfeMbTH/VkUk36gv640JrrxDicScrzDZCc9D3DoiMkfLRTa MPXsr2AxQcm7XV4xxjgqDm8QUwIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUoJ+wPWMZI4IkPUq4ILzz2Ac7p2kwDQYJ KoZIhvcNAQELBQADggEBAC9Gfs+FxFMrYbAZ8JLcMtAfRLFYtUzSwoaMcEESJAka Uo8lm90h65ihnwYIvutqBdSl7VXlXEQaAZ+Xck+saHCo7ylGPyZ2HXKVlgVJDQK0 MTD6yklBlC3Y0MN4OuU1xeS3TeMBvSYYSC5msAp58tc4MsynGt3ssWXZ2aAEEsul CsrYvC1jgh+qWqoDaSWdJXf1Opr6Dl92NyMKLqDjvZU4lZTLk16IuJ5JOBjdOtjf k7HTwjoJECe8gd1eGqrWw/n/Mm2fgmGK8Xgwcfk8M+j8CaaaJjK84vR+8aF6B6ZV +QW3xtth5HRzedZ+NX1+4ZD2lUQwbzbbgtY8IniDlJY= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlzCCAn+gAwIBAgIIaH176sE/O10wDQYJKoZIhvcNAQELBQAwWTFXMFUGA1UE AwxOb3BlbnNoaWZ0LWt1YmUtYXBpc2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1y ZWNvdmVyeS1zZXJ2aW5nLXNpZ25lckAxNzczODIzNzMwMB4XDTI2MDMxODA4NDg0 OVoXDTM2MDMxNTA4NDg1MFowWTFXMFUGA1UEAwxOb3BlbnNoaWZ0LWt1YmUtYXBp c2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1yZWNvdmVyeS1zZXJ2aW5nLXNpZ25l ckAxNzczODIzNzMwMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2fye rDnS15gF7ZFb8b3WMXw/689+0Rc6vSugVmwAoFrUewUpz0syI20QHKwCh4+oPYFC 6IZrvV8vAmDOW/qhEyQ/BpCvk39RkD6D44JIzXY1Hcl5UnqHbWJpPDkKQM+ht8Zf nV2k8TVwyVu75DE+ik7UzZiSd46RDzdkJOSvq9ENq7u+4q/RPwwBGhAromu3x296 DLDBYOAeuR45EcYtMeZAAFiBAPiXwUVlaIni9d8YGGSvj4oUiDMH/r+tC++rCPLg OTFeBId2P8SmHHEvNE/QH3Y2ckxPHqhiUUKnuJKg+cS7N0uzVaJsUcR5QJmuu74J aJuwXIfxaWaX/lqyWQIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQUHeCgM1BqEI0oQ/idc5hE7QBCYR0wHwYDVR0jBBgw FoAUHeCgM1BqEI0oQ/idc5hE7QBCYR0wDQYJKoZIhvcNAQELBQADggEBABF9QyPj w0FZoWv2KlodZ20MSNDYmoaBIZy0KTMAbxpgtqL3YFouk8dan9rc2Mzu1GG0wkqI q+sh7aYqMAFcQSACoNBC509Q0voA7OXI7xq3Wc6kkvF6+N7DMlVjWpep8zmNfMK1 JcPJaJBv1OAHhHFmwnB6wDlHvUdGtb3Vjmx5CIWF9sbmOsJgBWW9yJktJt67J1KQ HbIeZsBC7Kj2L5F4Td/tYgpiYoWySgyL4oYy/Qpg5sUN3L6f8pGihnL/NJB4gFHm W6Kd9NnNTpG5g5UDIZ0Gx4fX7rpIcc++DyZBEMd4lWmRGD/xSCfHOnJIP372Nv/1 L3ePdFhy5RPVL1k= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIIA+0s4Z2eSlIwDQYJKoZIhvcNAQELBQAwJjEkMCIGA1UE AwwbaW5ncmVzcy1vcGVyYXRvckAxNzczODIzNzg3MB4XDTI2MDMxODA4NDk0OFoX DTI4MDMxNzA4NDk0OVowIzEhMB8GA1UEAwwYKi5hcHBzLnNuby5vcGVuc3RhY2su bGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAo66D0r8pBt52MAje 95Rx/XAkdxTZAK/FSNKXfCYROVaSbE+DBPaMDI32MhglXMCy+dZH1zYca2oilNTK FRncI0GkZoB3PICEx3e3iBQRIadDWZ73sWD7CBBFbxPNN0zmLlxUDHu2r3B1VF+4 qRijXgCZl+lyJsquhgKr88FcHPQFyGkZwF/sQtAbdZZo2g8oOWNyUOvr475NRkvl 5xXlPM2bj1SIgX88GFwmCmN/vO2Ok3pBBz0UICpCELqz+SXd6IuzAGyam0YRXgIq D6UNtiRJE7BQhv+x5cnGe0agmfgLwiucXPbs1VjUbgJhf6sJEi7Z8bjUGPSu7q3L dX6OmQIDAQABo4GbMIGYMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEF BQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBR3v0uQfCJQIqF2AZTJglF6Vp02 wTAfBgNVHSMEGDAWgBRdAOFoThXZtJDiDpX/qzfVP2ogXTAjBgNVHREEHDAaghgq LmFwcHMuc25vLm9wZW5zdGFjay5sYWIwDQYJKoZIhvcNAQELBQADggEBAEa4MzFl WEVDIQjB68xrRmXGddDQ0uohr3w/47jtAYFXlZ5JtciCL/n1wNg0iNhWky97UFWV bfozJrJE9yRdhivst20hpQLyX34YrLwt0g5KCmVeM97VRNidbcg6YyJz2aojBgjK 0uxqoT7TgnXovZE0r4xNJoPd0Bj7O0YJELp+takVJ5euo3QOUWaLhqcIOBp2TS4/ ztPi39Xq5er0RPGjTo8cM1aMNFKWoHV3COlFcQ6htRFaP3994aV90NuZWFcc6g4o NxJ16BGyiJYhbdyRcl5n2eIoeuhjJdQ+WZcjWcXHJYBi/apy6TkpoOJPDE+Waaxi spPU3lYLldq/i60= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBtpbmdy ZXNzLW9wZXJhdG9yQDE3NzM4MjM3ODcwHhcNMjYwMzE4MDg0OTQ3WhcNMjgwMzE3 MDg0OTQ4WjAmMSQwIgYDVQQDDBtpbmdyZXNzLW9wZXJhdG9yQDE3NzM4MjM3ODcw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCxS3LC/Qt1jpvY+EgHANP/ 58vcrgxMWXLYTVMC6rRFM//6pgD4eLfZi5impQ7CxqnOYbJ4/Hzl2CfD0QGS+m5J 6ekoR7qAJxWZUblGKWTLG/tyDanrw5ABSYfFc0hcYKmm0+HjFA9050fapQBxjWoe +ld9hPgnt2MWLgrauTh9Pl6gXQ9vF40O4ocI4X/lBIKbSyiDfAX0b23FNAs6eNbC 0UNy96QerKfoarCPT58aDPeylDAMHaKWlmvUyCHKQJhrIc7YkvaegNDDp5i/ulfz 14u22Ei5fdAp9mSzOwkxdtoejFmdbwkIdCjM9OQzjGz/2gts8WFpGv7MGhg9Y1CZ AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G A1UdDgQWBBRdAOFoThXZtJDiDpX/qzfVP2ogXTANBgkqhkiG9w0BAQsFAAOCAQEA eETbMMOIUIMJ5DN1aeTlSSkDS32vTU/LAUPf+Vs7yxsxZicRXMsL++ZGPHa8SqI0 tP7zA0rew9nN17I6qG5bv9PgC+E3AMSmVrXuJimH0BkFikW38xwJw3oU6EEMzqY7 xvrGoDyF6PLofI1Pos9YxhiP966c1vv6nqMKXYabuQqgLTo8Y/z5S4EX1RAFdA9w 250Q+RuxeF2WF+Rdi3sRKBIDweOkEUZGL0V/5gKJryE9Q0C9v7YjENNqN9bqpDy4 /FUToZ3XBmwfJE/Idwm43gvfIxkfsGhimITZsFt9YMQ5nEcxps0LV6tuU/p7UCte gR7418kdMhxEA1kKNCbzqA== -----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-18T08:47:46Z" 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-18T09:03:01Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "13559" uid: 6ec6f78c-98bc-470a-a7c8-c916c15dd718 - 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-18T08:47:48Z" 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":"7a701720-9781-4cdc-a637-2f91e6b4afcf"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-18T08:47:48Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 7a701720-9781-4cdc-a637-2f91e6b4afcf resourceVersion: "2886" uid: 8022a35b-b986-497e-904a-bed992f81bff - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIAVbSWW0mfD0wDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc3MzgyMzc0NzAe Fw0yNjAzMTgwODQ5MDZaFw0yODA1MTYwODQ5MDdaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3NzM4MjM3NDcwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCohiXHf4l0MkG3d86it2NRuJGPz8Svj/DI U/zE6xjNPSn7IqFDnBe1tE2yUmKHkDiKrpAdzqpuPfKEKw4jbs9ejDjLTWh6cM6g CgRNAtMk3ZTwQQIDg9Ny+pSu54R2omsvcahtlcsFq+X8LVh5AFvO3la0TA++0SND qfnJSxOkILH0SZ/0EHTw1jhi7ERETDXDQIujAGA5b1w/BaaOs9MpVOzixRKMOmTH PY1bnh5LnkXuChwf+0VbsluQfvw6IucxRcTCsLcMwYQDDerVNH44xkwT9X2Eu3pW 95TDzhQ7GHkftvvHPtvln8POpX0eHFoOwHMXSn8MmaDYyUXnMbDHAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTQ/hKK 5gzS5ieOD5VIevPqTXdZPDAfBgNVHSMEGDAWgBTQ/hKK5gzS5ieOD5VIevPqTXdZ PDANBgkqhkiG9w0BAQsFAAOCAQEAh4T6tVvv2Kr7xINebJD8McRnrdXyNQVerrdr 6MHiOE/a5pAHoyioJT7uhzCF08UxXuYn4Bp6IEcn8Od7LZRLF4uFUxfPjruPI2tb UMrG1khvZpMTZndd+gomsBp4ZIBhOTxolN1+RYeQOOVpTmqlmlF1yYxryb0nD/fz Gyp0TwBwPxQjoMG2XqTUXOMPoUdi6/b7BMgyJQsodJ+s3t0n5mkMxjJzFsYq/yKu 19mlJtf+qhdKDIKFG2Eonx5FsjNoQd029ynTcpgbTHVC4AQz7TNlmvrms25HLrr9 JxnDAkx7/ws3l0Uyt2RpeuxC3BV7szQ04nwHNB2MxpXdUAPdKg== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-03-18T08:47:46Z" 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-18T08:47:46Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-03-18T08:49:18Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "5814" uid: af6bc8a2-55f2-4aa0-9c17-98ca78a17b30 - 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-18T08:47:48Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"7a701720-9781-4cdc-a637-2f91e6b4afcf"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-18T08:47:48Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 7a701720-9781-4cdc-a637-2f91e6b4afcf resourceVersion: "2885" uid: ed403a62-8064-4db9-997a-c90e1d3e4d0c kind: ConfigMapList metadata: resourceVersion: "25163"