--- 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.25 creationTimestamp: "2025-10-14T13:07:08Z" 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":"8f8d288d-ab5e-4684-912f-09b4d9be824b"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-10-14T13:07:08Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 8f8d288d-ab5e-4684-912f-09b4d9be824b resourceVersion: "3389" uid: fb7dc34a-469e-40dc-b010-8be0e078dd37 - 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.25 creationTimestamp: "2025-10-14T13:07:08Z" 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: "2025-10-14T13:07:08Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "3385" uid: 25e2ba7d-f3d1-417f-b5f6-e97ccef754f8 - 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.25 creationTimestamp: "2025-10-14T13:07:08Z" 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":"8f8d288d-ab5e-4684-912f-09b4d9be824b"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-10-14T13:07:08Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 8f8d288d-ab5e-4684-912f-09b4d9be824b resourceVersion: "3384" uid: 00e6775f-dcfd-4df2-a1ef-a3ee1fb7b17b - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIIc1Nwk8QihvMwDQYJKoZIhvcNAQELBQAwNzESMBAGA1UE CxMJb3BlbnNoaWZ0MSEwHwYDVQQDExhrdWJlLWFwaXNlcnZlci1sYi1zaWduZXIw HhcNMjUxMDE0MTI1NDE3WhcNMzUxMDEyMTI1NDE3WjA3MRIwEAYDVQQLEwlvcGVu c2hpZnQxITAfBgNVBAMTGGt1YmUtYXBpc2VydmVyLWxiLXNpZ25lcjCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAJcJUK8V6iUQ8xP+b4z+et7piaggSM9Z kc/uras6vWpdr18/WrHnzmmm8OvwK4esNnJy0argtaMQ6GUhtJtwJt2L0/qtzNg6 ICKvRfgg7ShlnLPeizBEpaG99Ut4NxQsOhvR7kJ+6fhqZ+QhkH2kNT8ph1A1jn3K X6A0sIgZosSlSZ+OFhSbEc3IlQ+EiEhRnssnw343swKM/ieH5P6klQIusWvpmSNR Enu0y3PCOa48DVhUlxChy4kjb2oOaNmB0+Mn2DjwFI7pVE8oGZ9Yo4w3FN2Aw7aG TSzv1p6uwuTvwu5VdZbytHltRyu+VpJ0Df15dan7W2Lcc8/H59KVRW8CAwEAAaNC MEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFOBk mIlQL3Tfbku4rpWPBfNzQ06kMA0GCSqGSIb3DQEBCwUAA4IBAQBj9K1k/wMXq4ez FV8fUXJFtA52Yxz2bDy0ZoJupwMqFWUTIErLASKfC3ZOUj8g/MXzfFUjEVQNrZIq u7WHwR5KFFOPOHadt+DWWWydPnOPBIW4TSW56fu6MF+Zml5mPL9K9x3Eb37fDT1r giiOHr2t5A/13Ftl1BZwdUo4PTo8tWXMQQKwXH0ckInXnh5HqvyLmRaED2oGt/wz sja7wZWkq9oghbTRiZakCD2B5ojxowBegHddj/cbH4Fbgy/nPf51M35Ujm1WLeSl ONEz5XuyjPlD6XIAyMK51UVeybfu2sMLXONck0c4ZViQol9NAcXFaGm9ObnZcqAn 4hHfUI73 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQDCCAiigAwIBAgIIXsyP1GznTxswDQYJKoZIhvcNAQELBQAwPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMB4XDTI1MTAxNDEyNTQxN1oXDTM1MTAxMjEyNTQxN1owPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3x/qyp/2GuXE TCNmXofCdqGjdFOPpvLj3iB8Ua3Xd+/5buAPZLUUigus3whBi1Kt2aedOWAbEZ/O iB2DjwxnSLtkAjgAp5drvslZPoI+FwLD/NERniTfkhUhvaKPBPYDjVQ1pEw5Ef5+ Y9efPdwQPLqAuD/z/x79UsQCgZ/VWkh2STLNDRpdXIUfiBdPXm2+eVci6uy6vXUv sfYSbWNMeKm5wAfrp9uTaifx5s1zpJr4IBexdKh+JpbJdlDA0TUUkOHEQ/DvF/V2 Y65f4+vEjLaYczAnVl5t0fp2ya2Oe4CpvTenjghPzSR3f0kbNmv1+BJEaAOkb8EY fpp/5hiF7QIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUNhA0Lz5zqM+IxzHdnAEMTvGa4mYwDQYJKoZIhvcNAQELBQAD ggEBAA64uq0DBbuA2OTA0UKnJXbC+h4v7NC8dv0iTVv/3tBN4bjd+129qydMe6QW Ecytn180JhQAAt/owl/8DeYPOG5Nzzx+Edpz9eKwZX1CgPwTCA8BsIkgZdT6pzLQ kiSJVsUZqSJ5ItLByHO7+THAZ4PscMpByDPQrIRW+m4pwjCOST2DAdFqt9OideAV btnqMPYTy9A6lI5S7H8f1uaBF6OuaS4s9kkxSY8y4iMU+OhCK8xZ0ATuOWWkg3m4 WfbTodTBA36NQELzLuFKpW9NjhvLu/1gq5CoTH/ijAlmm0uVSBNP2MOa9bgWvuNX LqHu3fOBhtH2YZW6PAd+Nd7ATzA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIIDb8V6xTk3d0wDQYJKoZIhvcNAQELBQAwRDESMBAGA1UE CxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2aWNlLW5l dHdvcmstc2lnbmVyMB4XDTI1MTAxNDEyNTQxOFoXDTM1MTAxMjEyNTQxOFowRDES MBAGA1UECxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2 aWNlLW5ldHdvcmstc2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAupw+e3p1VhX0pHMyzX6rJTiBez3uYhY7hOTE9KQHSdryCVkT/BTbl0YFh3qY QL3YbXDw7aGNzHNfJ8V0IRLjYwphVKYHmIxFUFV5oeEQzSppJSBt4lGovQJ+0qgi 4s51uI5WMDrEJM10X9ViDbbCXkTyWLakjAp6veqT+Kc9dE65fqVNZOwdeAxX8s59 fBUW4VK64KXRn6TMkklWe7H0GBdqydHNdDJhW3JZRej/kjrzFhqQlX52aev0+ZQH p7NZQPV3qbP55uM2lGb+Uxmnq8ZSNqywm9DAP2IjImHDB1jJsl7lEcroO459CNBP U16f9gHFrYr5wmR1D0KncgsRCQIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUQ0Vs53/Zq+81daQLKJBrm2wk1/QwDQYJ KoZIhvcNAQELBQADggEBAHFtAKcZa9r7EUR8eS3QPj3SdL0JVftHJu3DU1Lkw5Np vnhRllA8Q1vb7St9odNmXNDuXRoslvO8cWB6pLfSF5rKmvziYOWmubrLDXrBEzHM Q9i1kGmH1mV6MuKDEBeiSdMLIw4EEFFVP5bBNaQ3CHH/ZA0hQsB9nnia7mS1xWR6 gq9nijCKlFmwMmixwxd6Bh9trPEEa01/8NESK+mHqggB+I2WllCjdURlS9cRPK06 JJ4J23pV4SBwiM4enkbQD6ILVEeVRX8wU6ywKdTyDwqimMOoRvEKDNOfadcs/gXN dOXg1T44GqPmwUOljWopqWKMVxPCZrCEfvfKJtcff6g= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlzCCAn+gAwIBAgIIJGv/ZuH5IFQwDQYJKoZIhvcNAQELBQAwWTFXMFUGA1UE AwxOb3BlbnNoaWZ0LWt1YmUtYXBpc2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1y ZWNvdmVyeS1zZXJ2aW5nLXNpZ25lckAxNzYwNDQ3MjkzMB4XDTI1MTAxNDEzMDgx MloXDTM1MTAxMjEzMDgxM1owWTFXMFUGA1UEAwxOb3BlbnNoaWZ0LWt1YmUtYXBp c2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1yZWNvdmVyeS1zZXJ2aW5nLXNpZ25l ckAxNzYwNDQ3MjkzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAw7oa G6HXBeOhXZGPAb8RCKZnLQYdc4q3EYKnyGHxSdap/nSKpsosV4O4pUtxwbFf5WCK oAUiFqvO0LG64DsMBvTvn14u59AGgCnjqlS3pfoASrVUfYtD6TYedthfA7ovSSxG OG80n28kPX/1Yivy7FsE3TtBfmhdFtKnlqUAjvKUxJ5qyDPFLH+n8ObmtN8Kveun ThdKOon0Zk2mhR6cBG0KL7tb2yx6IhtM7hDSAylYIl/vo6Zvph0eIJ17qzPCvaOF x6RCJpjxrUjFhojOGHTh3ruXahSW8xfiGNcWkmU57XBIlQsd3nt07acL0ONeNoyX xxJWTlHp5vT8WHqt7QIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQUNw/2y2s6v3SLn+x8qctfv5Lb2HIwHwYDVR0jBBgw FoAUNw/2y2s6v3SLn+x8qctfv5Lb2HIwDQYJKoZIhvcNAQELBQADggEBACBiIAVc aWVyLCUf/u5Boa5z0+QCf/XsEKouJGKi4Zud1wQOsaZyfgJi5i1rD/Xu0C+/cVuA opTP0QLTljP5fbnW9NHlq4+eKodTfgGQi2Ec6NOvf9YwdjraRpgl2j9JJfKMc2wA uI6S1I+DDBh2jMsyzZqFM2t2QId6rtxaCo3SIJkUv2w9whSmM5TWHwhnUnomjnvy 23jl2O0KBSI1LiTf7WFK2BVPR/QT//kCqyxusyY817iWRagL5D8/HXx4WiTy6tE1 EyRTToJNRcy1QWObg5CDseAfF3jvrH9K8K7LrrwR1ccyC/esbA7AWidWscCS/ooN 0ORnw6CRgLtSI28= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIIYzAyVDDKIRUwDQYJKoZIhvcNAQELBQAwJjEkMCIGA1UE AwwbaW5ncmVzcy1vcGVyYXRvckAxNzYwNDQ3MzI3MB4XDTI1MTAxNDEzMDg0N1oX DTI3MTAxNDEzMDg0OFowIzEhMB8GA1UEAwwYKi5hcHBzLm9jcC5vcGVuc3RhY2su bGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0tKUejs1qnObRf1l q7uB46EVyETlo5b7WiuHfg7mhfDczJePwxQxofFkPIfYLX6IsgXBkz41TgPB3qu+ sX45lJ0SDkD1B3u/N7QvjKXEMaYISe1jmWKxYZgfg4OoTwAyZEK4cuIIDN/gKy/E ped97Fi4+lTNuQBJOGKhtLGfIQwGRfCdoFgXBF0Fg9SSS3ADaQ66JegTmvY8286/ YGWfAbrCwYQbGRV7KJG8b68VtSN4ohaDRKeoijwIqjI2kJwOCCcjbzWa4NBTzIDw uj036gMhjAlISB7Hw6r8p3RZxFExoG2B7roGDQpiOYAzLoUz9zgPKcQwDtwo2QNI EjpOcwIDAQABo4GbMIGYMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEF BQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBT5mhzAljHRcjUKOBGf/n93U+pL izAfBgNVHSMEGDAWgBSOsoX2KUPbJplmCuGEW3tKIN3A0TAjBgNVHREEHDAaghgq LmFwcHMub2NwLm9wZW5zdGFjay5sYWIwDQYJKoZIhvcNAQELBQADggEBAF1g6Kim tNgGb44DajTEo2UcGYOhXk+vTRI5FJzAnqA2n0U8SNIIj8xhGbsGj04rJ+RMVBnb Ky5WdNmOdg5Kz9eZ70RF9jfW+uh4gz/kICnhQEXxsEiAPDJCi/d5HlAge3nUi8DW DoUbHl8wGhu+MxSVn2gRnkDhWdNAInbiC5ZgdAYmNwPq6fQm16fPmszF398Lj2h/ vGAU/0yhTkJTdXeSveVEwy/yDsN9HpLno0MuO7XU7JD/tY7YJfAcjPGNHZnPdl99 j89QI0b+X89Te71nNfoCMYxFqNd4BJd55w2Y2PC0mxUuvhfOBGDjFg5u6bjKhUpX b96h+NmsUw5/j8w= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBtpbmdy ZXNzLW9wZXJhdG9yQDE3NjA0NDczMjcwHhcNMjUxMDE0MTMwODQ2WhcNMjcxMDE0 MTMwODQ3WjAmMSQwIgYDVQQDDBtpbmdyZXNzLW9wZXJhdG9yQDE3NjA0NDczMjcw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGis71Xfng7FLjFNUbZd70 V9lL8thsiDe9dpT2psXGDz1FfcdDA5uLe88Z6qQozqUdp+F5CPrg+cCoz0a4GL2c 6dRf+ynoQ5Mpcag54gYUjY447H8Iwrg7IKRFaOKtTnQEU4AH0uJNZB7gCH8mBfdu 5Epp5F+nMTqTqA+7NO4d2gSl0G4Ps4MpIjcfJqTFY94sZwzXB/K/xnKBG7R8Ddb4 GpkRJ/4KghCGGcwgciTsQKByzUvKwpjTKxa5gX1OfkYX3X4Qlt+D3gGU+hSggKGC lOXWshtLHcvCdS7StvFMj0MYHyHs3SliimNtI48eWX3YZ3jy8CBjE8VP4z6cFsDF AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G A1UdDgQWBBSOsoX2KUPbJplmCuGEW3tKIN3A0TANBgkqhkiG9w0BAQsFAAOCAQEA lvcqGtLssnXwpn5IwFcXbKlwSGpRRpRP7u3CqbWDodqJrmEidYTR7DmbgCoZp8TQ o7l8RSUdMxmEXV1lc+JqCwFoa+Gs1D4nckSYZpQSL7zvrY+o9tzJBnTfohRzM2vH /qlK79ekUhVljhqj3kKUgdNN5/m8YXy5bLYkEunohv4UtePETt7qva20mK9IBvgR c0oxIOQFNJf9QxNrXk18aKwtyMAZSf7ZKITLbecN0mqAERxeTpwmZe8ps+7WmiHi tzJA/8tHIk78Bh25e4HTXmQ98yrStOiG22MJMyRG/KuBo+UZIZ9aG1RAvdJx6k26 C9bmLdDrJ8p/6DNkdlW9dA== -----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: "2025-10-14T13:07:06Z" 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: "2025-10-14T13:17:01Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "16186" uid: c8b8ec51-b7c9-495b-895c-2c6e3671b914 - 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: "2025-10-14T13:07:08Z" 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":"8f8d288d-ab5e-4684-912f-09b4d9be824b"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-10-14T13:07:08Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 8f8d288d-ab5e-4684-912f-09b4d9be824b resourceVersion: "3391" uid: 53df76ff-7e06-4321-b7aa-9386e3355bdd - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIJJWNoY3fPugwDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc2MDQ0NzI5MjAe Fw0yNTEwMTQxMzA4MTFaFw0yNzEyMTMxMzA4MTJaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3NjA0NDcyOTIwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDQwYD3k8EIp9fgemEhzMoVQ5nyholw8LVP NUxT69N6gWvqClga2R5HA0IY1we/nNNClBz45L1xDrX4vkAAyLv0kzzNwXxCexhb LK6tZAM//r/Lx/1nfrRM/RkPCA73OETXEfljqZWN7FA44T84HWRYQKLpx6xg98iM yo4cl2RxdzYpWC4/OWMyDmUczbarj15uxy7T2wNW6fV0A3fYxFfVKNTdW+aac+FY ENYkmNWlOI5PYZ/ttPw78ABMXtEACAnWu6Y2tgqxJi73OU+2HO4mRxbm+Gtc/44Z fYp4DdLn7VegnooYUAeejrLYGS6GtvY2WpSum+osSR32dRAsWJ8HAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRkFz5i UYvkIcKbmyQcaFdBpfqSMjAfBgNVHSMEGDAWgBRkFz5iUYvkIcKbmyQcaFdBpfqS MjANBgkqhkiG9w0BAQsFAAOCAQEAg+eWxVvXzU6MOeuDLYCkvaCCdySJltcfEIrC PkehwBolOM7G/6RXXkMwkmrb1MWtArIurFAvFtWDBgnNl77QR/jcSa+cgq23Zout ZNK/I+WOU894XOZTSjs0Iaj6Loh2L1x2QPwb8az3Y14mdS9u902zlbbHzw1MvtS3 U2/Zztu1G7yPpppp83q6bMHFZPaTK4kuxkWywvtmXex7eQfh/KSDLBnKgWApReBN bJQqsOX3WrBqUqjViP8WCnOpX/IXEcdLhPgvNpfHFtC8hRDwuUwv2ZQnsYWIHmlJ aTclJvaeqYZJVra4spg7JqEyS6ZCuVz+nxOQtC9RGbejkfEgag== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2025-10-14T13:07:06Z" 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: "2025-10-14T13:07:06Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2025-10-14T13:08:28Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "6456" uid: ba75ef9f-95dd-4a0b-8d2e-4fd1ebc346ef - 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: "2025-10-14T13:07:08Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"8f8d288d-ab5e-4684-912f-09b4d9be824b"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-10-14T13:07:08Z" name: whereabouts-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 8f8d288d-ab5e-4684-912f-09b4d9be824b resourceVersion: "3390" uid: f1b1e9a3-6e72-43ae-8698-78dd496b3a62 kind: ConfigMapList metadata: resourceVersion: "61520"