--- 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-18T17:40:41Z" 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":"aa4ad8ed-caeb-4cef-b354-4b21dddf95ab"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-18T17:40:41Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: aa4ad8ed-caeb-4cef-b354-4b21dddf95ab resourceVersion: "2951" uid: d56a1de7-b237-44d0-918f-bfa5b5ff7ff0 - 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-18T17:40:41Z" 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-18T17:40:41Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2948" uid: fb5e3cdc-7666-47ee-95fd-308119e60731 - 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-18T17:40:41Z" 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":"aa4ad8ed-caeb-4cef-b354-4b21dddf95ab"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-18T17:40:41Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: aa4ad8ed-caeb-4cef-b354-4b21dddf95ab resourceVersion: "2947" uid: 25257844-04d9-445c-a5e3-91da514c107e - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIIKaPnnlHkgKkwDQYJKoZIhvcNAQELBQAwNzESMBAGA1UE CxMJb3BlbnNoaWZ0MSEwHwYDVQQDExhrdWJlLWFwaXNlcnZlci1sYi1zaWduZXIw HhcNMjYwMzE4MTcyNTA2WhcNMzYwMzE1MTcyNTA2WjA3MRIwEAYDVQQLEwlvcGVu c2hpZnQxITAfBgNVBAMTGGt1YmUtYXBpc2VydmVyLWxiLXNpZ25lcjCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBALrGYYAlnNkBACb6+I1v8XuiHg/mLVey bSTnymFDiKbpjmBp204CSw3OZx9RI9rpHpoXUfFH3ANLJnEoCb+/zDPguvOxiZzs 6wnO3MzI0jEUbSrLxoeu4WoOktH/39tPWPmLGXIVJ1TYoK+Qe0Lf/D11e8s9Y290 Zl2gq3M7W+s8ARP35W1yRe0s/GkqpfiHJw2zeMw4c3Gmm4p3DTtA4YXpElILGP2z yhbAlHep9cdHne3+F4tbbiMx199MHch1PQPVodTmyUavqiuHcQWgCpMpQ7kqSv5G wpwbqFno/Jf0ukUIVUI68cI7HPPhepzKg/17XqgFp5HcrfrPk9es3OECAwEAAaNC MEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFAO1 WQOBdKTacRPMQ81fIDBcaX//MA0GCSqGSIb3DQEBCwUAA4IBAQBc6mR/wCGxyZ9M SPtedS7cKqcV0QeBfA8ePwHzKk4xGvNhnNfL2w1oAJ6bjs++wYgLE86Vw3SY2jWG mmm4xteZoCMPgm1eYGG3XlBYmensjJZJ8hxq1ID3GRjBAhSFMn4Yk8I0lyQaPASe r6p5yQM0bDZvnUY9db3lTZG1MmEdZIwqI+RnWMYSMYeYaxVPJ/DdUcNgKPhJZhBQ 7VkDotOZTS0g8C0gcrCnB+L2lcj0jml3qykwYG9HILUUvhTW/Lf62PApfXfPGpf2 OsFDXX+OzWKrNvN1yQtia1jc6MpNQVPP2HmIRcBnrZeaSYNGf0yEtAYwelv2xTPS Nrw3t3oi -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQDCCAiigAwIBAgIIRX7LrMv2YcwwDQYJKoZIhvcNAQELBQAwPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMB4XDTI2MDMxODE3MjUwNloXDTM2MDMxNTE3MjUwNlowPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA26tAqm63B07R FFgh+OnCy5YVx6vMpjd4LJCyeTE+EU5zKUajyIhsmx8Q3kYx3t2oXrXKphAf4TZd ZwVfQDlDB8Iq2xB/ioglr3NYVf3iDTRutJPzuIazZII6SjzPTpaQodK53vdk3lWx FaOD0fjBsrrjl7eZ8pqeiR4dSL+4lFpDRB4pwkimochJd3LuzTkGSM9Gkr+tnXMx r0zAaIHlTT00bYIh7UuYboTXHHfA0EQcfVR2j0TtDjKiTxJqS0t/BuiBIQQFxzwu c/meU00LYEBClE9mVy1u7luUIBWrf9pU55mo2d6+Bvs3Kw41j1v+veT2wgjHkbKE HbTGGJY5YwIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUU9zcSVMB51+OGf4qiR/m1qxeXJwwDQYJKoZIhvcNAQELBQAD ggEBAFJGG2ucs916C9LhCXaNdDu9VIpy/szX/XR9Ramu3O8VkS9BcA73AqsPbEzm gIsw/kJ+mQugd/bby6mv8McxrKPjIpBp12Yhf6ID99gGoJidknKHHdg81JIJa8+U kgycBukyYDD1dWw0LoBnHlJUymr7r7HEUwpSMzJeoEAExyDUAo58CAXyjpoBR5Kf acLqL0vp+x6HEwhgf3x7jnW0CfIS0ZN25h0F3itrYQELVBqPS8d1FUISa0U5sKOr d61ZshrU63w19kIWMRbzwSRAXtnkSFdbgTyc/i2uQdpmV3pFvLfs+T1x7utlsfB1 0Nb40GYKDbCY6c7EE0DrwX8lVnE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIIUsi19Q2nhh8wDQYJKoZIhvcNAQELBQAwRDESMBAGA1UE CxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2aWNlLW5l dHdvcmstc2lnbmVyMB4XDTI2MDMxODE3MjUwNloXDTM2MDMxNTE3MjUwNlowRDES MBAGA1UECxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2 aWNlLW5ldHdvcmstc2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEA7Dk2jkKgDlOdp0DVm3Zhhk8S5kce8G/vWR/5tKu7Y4+3r9oABoq4KIytSgLv keYp4DMORVyf0Ac/jBj07oQOfHbwfCdeM75z8bq2xQq3qEeu/up/fQkEnBI6fx2q JACIkkFPgXY2EvpJziOCch59tka49YMRKnJYXYs/+SQ9BYFIjAOxNeq5b10klgVK j+mXLjwskziLKzly4MOQRc1vIuDqOhX5393+tLkX0/qGKd6C15SaSPNdHc+OKe0m LGT2o/oc2HIMtB3cLLlU9KMqrJkIeAlFH32I+EoyKhpOPCRqXqvO4dJgxT/9c1HK /Kxua9IuHaSbRL9tC/Z4di0nnQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU0jNWHufHmWs5RI9uSHQbuXLeM5swDQYJ KoZIhvcNAQELBQADggEBAE/7sWTHr9rEYFrGuoihRu9FxlMJsQQ9uCrdV5ggNwy6 qTNppfD/7C0b5LDXHM6bdNL2ehVwiLIGQmdWITydkLqgfC+CEsB/cqmJyFTMitKZ FEAG/AghKuUXzejC0UUxmvRbaXJ+HteLXOg82aJAT10lmfBfGbR+uR30Xg5qS/5+ 25upB3RM7ox1OF0X3+62OZ8ICQcIpcZ0DMsIgvENFj/Haa//7SR//jyj+qEAEbub jQfClN4c7lGsWmC1NDtGNy4gC60Le2/57DILWGDMkuJhjpiPT3ObtJsh5B/4yOnk 1BKVcfjKSEl2UxDZp7CiODVLngkrAlYpjf683slewIY= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlzCCAn+gAwIBAgIICOOz+jS/o70wDQYJKoZIhvcNAQELBQAwWTFXMFUGA1UE AwxOb3BlbnNoaWZ0LWt1YmUtYXBpc2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1y ZWNvdmVyeS1zZXJ2aW5nLXNpZ25lckAxNzczODU1NzAyMB4XDTI2MDMxODE3NDE0 MVoXDTM2MDMxNTE3NDE0MlowWTFXMFUGA1UEAwxOb3BlbnNoaWZ0LWt1YmUtYXBp c2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1yZWNvdmVyeS1zZXJ2aW5nLXNpZ25l ckAxNzczODU1NzAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqRvg ZM2KFhnoMRYMEOr08vBzhbVXSZEl2dB7gF5lvNk2IsACY/VYdjftWRLm4MyNuCTo TBwgtsHHLn/qQgL7vpRC1ltkrozmIANyvaRtIObIq/hzOsv1xclrOcjCTRF7LdM7 JKd2BXuA8JkBkXfW4vKJmmra7lie5NrzSQ9F1qXhlE/eFCPKrvd8Jjq7f40qe6Xz hZ4POVo/pglaP+MQyoQuBW8HwHG8PQ06Utaci2J6PHcZRptVmrAp6CU3hBsEQCq9 z24TCZpfDcKxbcsSmmf0VISCSw5XOomuzY3ZKp1q1iy39fonhOLbuzGF+X0DvruY gTv2eS8gh0vfoxnrzwIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQUMnmcg/jj7a0ulUQ7Ia0C0apBRXowHwYDVR0jBBgw FoAUMnmcg/jj7a0ulUQ7Ia0C0apBRXowDQYJKoZIhvcNAQELBQADggEBAKhwaz8Q vmbQSDkGf7PmHk4Jxi4MtVbfdL/HrXhfL5cfgDInRIpCrh+RlHPLFJAvWpvlB7XI IRlCOv+vJ78WdXlxw8iefUzFJbWUXRGtNvWLUtg5jcIyikuSKzgCUV372sBQ98pt O1/jfQeMiZ4BBPg5sAiEj+OS4SNrXBezjU/5vUnr5XR/n9H1CIpG/KCDXlTzq03n v48U9eY3ed8IXV6TV1UAYYKMmpPQgKpDD2oEof4Mb416tMLYcL0N88wKNAviT/1T 65AMV7FcBUnBv3nHGS6tyOAsOUvekf+diPuthTQUvcE7BTKY9yEiBIkAMqZkvwo7 siPQ7sBg7AYyjRU= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIIP8BVvBiBcAswDQYJKoZIhvcNAQELBQAwJjEkMCIGA1UE AwwbaW5ncmVzcy1vcGVyYXRvckAxNzczODU1NzMzMB4XDTI2MDMxODE3NDIxMloX DTI4MDMxNzE3NDIxM1owIzEhMB8GA1UEAwwYKi5hcHBzLnNuby5vcGVuc3RhY2su bGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0BqgAe6gtRMTAf/o T2q1W2fiwQWjvcUGfAVPSUqffrpBwjDggn0ObV5SFDDfmN8M7A+pxqZOysyhWs0U RlPWcrmcdTQptxBEFnA9W0cREiW+nZKO1G8ELbOLjVlI/ELKSRruY4/PEdoY2n8b FuNfKb43ifJes2UvmvS9Fct3jOhN3YIiWsNi/Xl4WwoRL2Kc/CYQRW2dSHRUG9AY iXZt9KE+C6Wqkgh+VScS5NHsV4sM+9Z3n532R52X2yzkKAq5Dk71d6quy6uTHncs PEaD69VHbh96t9RCYAeg+yUB8vs5P7NhzCF7D0R+8CxX2rVizVxn4EbPVzW/EyRW szQYPwIDAQABo4GbMIGYMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEF BQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBQVPUD9/T8ndTcr0kShzMVBSJrr XTAfBgNVHSMEGDAWgBToAELEyuFFRjj5xhKJmiPo/LgAGzAjBgNVHREEHDAaghgq LmFwcHMuc25vLm9wZW5zdGFjay5sYWIwDQYJKoZIhvcNAQELBQADggEBABFvAqb9 I+cqE/vDlqzGw6lhiifsGR+uejmiEJ5iLKjAMNxlH7UODH2/s71Q3NhRGjUNLD53 J+B3Q6HhHxKxNHPmmkVZ/E7O5se2qhYu1q0iEkV0oDWoBLSbqqp4eeGqqgpfUjJi eP5LjBhEH0uHBuqS1E+ftG39zPCf+VHBBMeIIEl7zdB7GSs5P4WQLplHcZyEkTO7 jmlBT+yMlPyyHF7o4JKwAA+zGe2fKkRWbGaHx0L7p5z1/bm6aUZ/vhAPNKFvKpuc B9HIIWSdrYZWx77LF672KRKPwLyYMNBlJsE+yhXsI+6XHTzQK/rvDajezkVgOV4b dGPrYFkNgU2yLbI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBtpbmdy ZXNzLW9wZXJhdG9yQDE3NzM4NTU3MzMwHhcNMjYwMzE4MTc0MjEyWhcNMjgwMzE3 MTc0MjEzWjAmMSQwIgYDVQQDDBtpbmdyZXNzLW9wZXJhdG9yQDE3NzM4NTU3MzMw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDC4EaxLSKtCrWHh7ZlIwdL o3CctKq04YkIPEKnIfG/WmoPdotJFUbJE8BWa9OcxLYRdK6F3XAZeQZRjI5J/MPA v/1MKoDk4BaUiRpc2rmb9CP74f8D+g8VlYbr/ntg+jK7bkwuMacyOPD/EXOByyhh bIUIxgvOqNZRIDxUpU5qYkK9Hrd716xYJme/rNBoMcJW6gcHDlD6QhfHg6y0QGjX /QiApa+v2H15nw19CR0opdFZ51ODWYNwLtRXMLJY3fwAuia3tXjzQ92fl/fSLbRE ZfAuH3FtlEXR18HXcrWt2futq32veaPCiMstWWYRD3/KQNOeqMSCshKpnGUZK9o/ AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G A1UdDgQWBBToAELEyuFFRjj5xhKJmiPo/LgAGzANBgkqhkiG9w0BAQsFAAOCAQEA JjwMy+RqdkOcNcvCMMbxbWIkfo0GzliR1tiqeQejevgYxwdl8qMJmRaLaCEiddTw jhhEoQ2f8zrhTXT0Ny9zV8qf0xXh39Ibmh/OzH2slai4DB4XwmT7prr6oVi+V1IH lW3nz/W2UZO1bvtS68zcjslk39h6cj7L/HAy65fiAuJtsrmump8nl1xT5SkAY+Z+ r4ueZrTEBgEIdI948H5DAjNBvCtB+Zwdkrhj9Ik4bhj5YGaFeh143JWyQjoI+M9y DB8Rjwc9x4twUd+3Gtc6LW2KqSKYaNWUEdEbQPlIew03b/LsZwz4F8FkX2Vx0Im8 9L3t5MEhvry9To+HUvmnYg== -----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-18T17:40:39Z" 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-18T17:48:33Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "10011" uid: b64d604e-27ba-40e2-b9f8-eb8fb3c0a5da - 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-18T17:40:42Z" 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":"aa4ad8ed-caeb-4cef-b354-4b21dddf95ab"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-18T17:40:42Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: aa4ad8ed-caeb-4cef-b354-4b21dddf95ab resourceVersion: "2955" uid: 73de9192-f7aa-4f44-9ef0-8ae77c5300e7 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIB0176A7nh0MwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc3Mzg1NTcxNjAe Fw0yNjAzMTgxNzQxNTVaFw0yODA1MTYxNzQxNTZaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3NzM4NTU3MTYwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDDbEJsqMXjigf6HT2oPyVVRUMQ3ruFPr3O mUUIPQk5n9qOhrjZA4jP+4zRJJ3P0GgxYKFc7HhpI0P4aYNB7iNAwG4z15AaJnE9 wqHZj+F5uKBFjY6GdD3gXlpAuddZ4uZ9DqP8seanYlvsEn9i5zrq4NN4SbHWGhEd rXmKQb6zA4ZWoLqiEPy6IDdP1wXZFcVJKRNkug1NI5dmV+bbQaSD0DOWGrr0X8E2 jWnj9v9aVIoSWeBLu3evcg6tnVJLtzFUot7ed+TgISd3hKQKc9OYRfzX3sU+hn6/ azgPsML6y4VitLOl9gT2zGoGql6Jxb4FIcQA3/QViuSJkbCPwdnPAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRYsz1R J2ju7NIHrM8p45zRjCTxRDAfBgNVHSMEGDAWgBRYsz1RJ2ju7NIHrM8p45zRjCTx RDANBgkqhkiG9w0BAQsFAAOCAQEAWxq8aiF44/3fhDoUZ7VWvIKzd/mb0MZjP/4u XIcnvDCnfa73WF7nWAnjnoTy8aW1rPRORGCIHUAkRhY9tCdT6aWfcblEte8CRGUQ NXbGmgjbtCxPcJ5PaTYxdcQv0SN1ra+HvJj10hnTEpZNo1uJfs7DkkahUwESn++p XZ6hWHxCQ1AWm1ooBsyP8peXDRSDLmdLPZSytyWp2lYSiomhtBquHaEKChGh27yY NaswdyHSXs2dKhorNw18spWgWQhiHs23Ex0OwG4f28rx6Q+4BuZcyP4BIGoHnauD E+85DzyMSX5iq7KjnBBo0N7cEl6Xwogkys/kyBqcAdCJYGKrNw== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-03-18T17:40:39Z" 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-18T17:40:39Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-03-18T17:42:08Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "5760" uid: 2362e90a-1de2-454e-a1b6-d0f1ff6ab2eb - 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-18T17:40:41Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"aa4ad8ed-caeb-4cef-b354-4b21dddf95ab"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-03-18T17:40:41Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: aa4ad8ed-caeb-4cef-b354-4b21dddf95ab resourceVersion: "2954" uid: 6f8dcc47-834d-476b-a2f7-6dd1d27716bb kind: ConfigMapList metadata: resourceVersion: "40394"