--- 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.29 creationTimestamp: "2025-12-04T21:59:15Z" 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":"90b2947d-5101-4de2-bef4-6acfb8950efe"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-12-04T21:59:15Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 90b2947d-5101-4de2-bef4-6acfb8950efe resourceVersion: "2765" uid: 1c6b6859-78d9-474f-b4be-78be240528fe - 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.29 creationTimestamp: "2025-12-04T21:59:15Z" 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-12-04T21:59:15Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2761" uid: 630d7ca7-4227-4be5-a695-66876899a48d - 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.29 creationTimestamp: "2025-12-04T21:59:15Z" 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":"90b2947d-5101-4de2-bef4-6acfb8950efe"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-12-04T21:59:15Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 90b2947d-5101-4de2-bef4-6acfb8950efe resourceVersion: "2760" uid: d9c3e125-6ca8-4f1c-bfb1-b8ffeafcaca2 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIIcy9ArmbAMYswDQYJKoZIhvcNAQELBQAwNzESMBAGA1UE CxMJb3BlbnNoaWZ0MSEwHwYDVQQDExhrdWJlLWFwaXNlcnZlci1sYi1zaWduZXIw HhcNMjUxMjA0MjE0MzQxWhcNMzUxMjAyMjE0MzQxWjA3MRIwEAYDVQQLEwlvcGVu c2hpZnQxITAfBgNVBAMTGGt1YmUtYXBpc2VydmVyLWxiLXNpZ25lcjCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAKY7zJKtJefFGOuz+Kmk9tTJIMNzpzd4 QDuwvEzg6OUEBgv+vXiN3M46c0N3Hi3BPdhF86KrHsekObdPh3do6X0xpGyGJ78O 9O8pk4WYWvQa03Yb0dn+NhF2zzr/RIEd2C8OB7u4zXaZraXNOCaaoA1EvE+G8gm9 vQ1pnFqbhZpHVOBKQiqHdgg7sFtzOt4qE+gaDLqxzJ/wqDoOPTRJw8biWHOPa/mD IieN2t3X1SeEwEonO7VwKdM6ssOEeh6Y2Vz3MOngISrJUsPHgZCrwaWwqXKEyx7F l4/dCQdaFR8gu/RDYoqGRPQkJVgbex51YSS0GDnKX+IsGECWVBG5S3UCAwEAAaNC MEAwDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFFQy WODXoStGjMgH5HSwzthcxE9QMA0GCSqGSIb3DQEBCwUAA4IBAQBtZYuIuFFFtQwy 5Me6qbel6BDp6nySatGXkcflHDNyuqBDIspSglgtHKYVv07ERggwUVlez1lsgD9z 4chX/DIx7RoxZ5oets3izdufhZ23fLrpSXzs3FEDC2mchZrmi39LUVrTfF04CZAz Niz94PWTYmxzUS3AS9vUvUz2QrhNTz3TOmG+lgqVd2aF3AhHIhmWx6QEN37dCSko e4Ghf/QQm6nDDkuVqsRcvz54GkB1CoMGumZ2BbhmYok1wrjMFrKp+u9/CEko56YH aaOWYT9/3iHGRrttc/5r4EKwG8rx0mBsmttglpwmHY5f+wqHwDFVMpqQaLmF25/9 DOVRLfaN -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQDCCAiigAwIBAgIISntekydMSyIwDQYJKoZIhvcNAQELBQAwPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMB4XDTI1MTIwNDIxNDM0MVoXDTM1MTIwMjIxNDM0MVowPjESMBAGA1UE CxMJb3BlbnNoaWZ0MSgwJgYDVQQDEx9rdWJlLWFwaXNlcnZlci1sb2NhbGhvc3Qt c2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlSIOKBrJBhqD uH81CEP7H3XPeyHzPfN0IMVvJ+exehAXubmMqrwjGSJYlag3cS8NLk50pptzxtwc OvQ6MECPUx+dT70v3G2sZTamJswOxpP0uV2lZGshDCBDtI+PLPyzxIXl1YcHLKi7 P2h2rP6hCoPC3Hx01WonB2f3McD88jt/xByeDVomW6Ghn2TMJRMVNpf9m4gHuEUU FBZQh1+hycTXKEUp54EmpYaI2XUkwQk1IhukX0Ihylo8B5O9A2CC3/FQWrerO1ry pcrqDRNfsbSIrVzFvUjJ17AyP3EoA1lpqvfuhllrjdct48KfMUrBkbKEnNEVVDV1 R6//vzK0kwIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQU7KL0IHXTdILrV+cao2lb0uWIeFEwDQYJKoZIhvcNAQELBQAD ggEBADlEtlbf+AUQXsf7xau2dsNsa4uCXx7gp3WBXGf+Ysgjz3TKwQ2hzA6/zP2I mbTGuqS9AGJGnX39UwBaojPlTCF4H9HI5fR3/VtJdO9Elw6yUPZ2XEZ3mnbKPj9A 800g4RAqZ+Uy1VWwxgNrYJ773nqFVAF6i4OZu5RUO8fLToFWeh3oc9hvpRj5oeEX cRKpI1w0ijWpT0Eem7czkRypLgndIrP6qqpSLyvLmchHVf9v0UHugo+Tj+v3yPvu 6p5nEcAFZhzhUl71/Ec1FJV94WPgZe/VjAmilXWbpUyCGOwS8vFMOEJ/zsUwg9Kl aU5Yqzgeo5G0oVGCbrQXm3GWPnA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIINX48Ofcobo8wDQYJKoZIhvcNAQELBQAwRDESMBAGA1UE CxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2aWNlLW5l dHdvcmstc2lnbmVyMB4XDTI1MTIwNDIxNDM0MVoXDTM1MTIwMjIxNDM0MVowRDES MBAGA1UECxMJb3BlbnNoaWZ0MS4wLAYDVQQDEyVrdWJlLWFwaXNlcnZlci1zZXJ2 aWNlLW5ldHdvcmstc2lnbmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAr7Os8VBJlVZ1xANW1QeYxH8lsUcclN7wR3klvw0ynHHwdFKeGqVg2aMwzsBN ES75gF/0U/jBZv5ee74EWw/MXbeZl7ErL1kJoj2IQfPehWcIFYB64bW52HWD6/0/ M5smmGjrLx8ePNlOujgF/HL1YMJVYT7bJxWfLs5CWzrmvLQQwrkr0ZZR9clw1Oue zDfKeMYeXZysbJojgW7UX7I9fOVIPJioq9+lUd9Oz9vGbneq6JCU8LMn0hBPfJYG jDn6ltDfBEVmDOJOK9Cf5dd1ydUEFhJkDCDKLdWlxohvXfPFDGnwV5Y/pwsGeU0q Q2PucgF8Zj94ila6zVUYppd0RwIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAqQwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU/c3nsFtbyveN6Nw8BjNZ+D2cFn8wDQYJ KoZIhvcNAQELBQADggEBAKQwCiKiG3OSENB3dIhRkz04j/BKUGXmTzpWm9pTn4vk 1lkfCEcsZBiFl9JJpkATxmL9VGtJTIP6Gu+P3QReAwq6cf70BJ9u5UOopfdjVgqY b03O8avYfmDuTYZNdEdT4wJcsXemMhlav8K5rMjY1nIuAVxp2KwmctECrdGKE6qi yAX10Q+6XnPOGtAP9KA4152AZGX1RvEHJqQLm3105wcaonW1sN1SVfJFGeC7mK8X PYNka8x9TDA/e/cv/nEPafw90QL2DE9SJBxCyzbO215Sc3foiZc6olFRReKQ5vVS zr5Ng7ZzrxolvORR/hWLlguPpeVKR1CnVnZPFc+Flco= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlzCCAn+gAwIBAgIIIDskKyDysq8wDQYJKoZIhvcNAQELBQAwWTFXMFUGA1UE AwxOb3BlbnNoaWZ0LWt1YmUtYXBpc2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1y ZWNvdmVyeS1zZXJ2aW5nLXNpZ25lckAxNzY0ODg1NjMwMB4XDTI1MTIwNDIyMDAy OVoXDTM1MTIwMjIyMDAzMFowWTFXMFUGA1UEAwxOb3BlbnNoaWZ0LWt1YmUtYXBp c2VydmVyLW9wZXJhdG9yX2xvY2FsaG9zdC1yZWNvdmVyeS1zZXJ2aW5nLXNpZ25l ckAxNzY0ODg1NjMwMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3FpZ mueB/LXY/JgmfPLpalb1eIDQ2TnPNSag960v/G+CxArcEdis6/FNemTcgPzLFm5B LYGat731GA0hXVwLf/W+fKOwlxrPkIpR3cNcpTDCrkcGkDYqMhqCM1bLT2sZdnX4 ZZqx+hdEuiOZJLTTd+Jlvof1rqq1tLOdVSccOpdk6YfBP04RXo2RserzixyHtfxk votRgKiMjGvnMoV8036qqBVExfZQxYZ0POFP1Dm0/nZj6JU33+GTR/Uy6zy/mkP5 Izw1Z1F3/skJBD1Ebi+vlgT/4yeOcwj7ZqaZbDZI3lctQR20H5L2cWGfYRBuVuIu AMSRTjBKmPA5dWQHGQIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQUfWVasZxrus12/l3PscQ/+GKQSK4wHwYDVR0jBBgw FoAUfWVasZxrus12/l3PscQ/+GKQSK4wDQYJKoZIhvcNAQELBQADggEBAFGx1Z2d Iwv+gmkgG9+drOVIEmNZDkX7LEQxUn2wfaQQpSfUY2O1EyMv/sjudqqE6g/wbf22 HKXNVGPBsvdxKrqvP+tVYi+nl/C3we8geAzujGtvHNmZNKvWdqBHXf6dheSexfMU P/VK0UTqtjMHLV4FA9NnLJkSdVm/HXLwPGcN1wEI+uSNpAFPVrolgdx6AvCoA4dh mZWEcIu2RTw/IPlT0SovsGyo+5JTgXDAL7/jpOxy0uNbZjdRbk+RsHBD4b2wlUm4 qyNkutFUCAH0egppQIfRkbPZuxcPupqX5/V0aba2xKGQr5A6X2Dt9oep0EKWg1SJ jfXhGzCJJk++xJU= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIIFEzL1XurHTkwDQYJKoZIhvcNAQELBQAwJjEkMCIGA1UE AwwbaW5ncmVzcy1vcGVyYXRvckAxNzY0ODg1NjY5MB4XDTI1MTIwNDIyMDEwOVoX DTI3MTIwNDIyMDExMFowIzEhMB8GA1UEAwwYKi5hcHBzLnNuby5vcGVuc3RhY2su bGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAutFLcMyoju/1pjKk Hip7Ykru/o2vhPk/Di/3mZADSo6pPTRaIuzlcKpQ+CuEEjv0CWnPVWUdKmOFxrj3 xLQNcroh1BptPlNXYFV2BGaHToEHCD5U8PIEutoH/meYOk76cLpBW7oCAcWTfX5S 5EDUZrEF2yOnXqRxJDDKQHKdT9sUng6VINye1DJ1tD1Eish6dzXZPc0CRzO5DAq1 n2IrAJPQLmXXKTLMgo4ZkRg34tFzUv3uoclFnKn0YbEcXUhaas9rNgcSYuoHRuH9 LqYbt0AnmbCPyAQTqedrh294dPkMGeIyfOXhfHfLHzK8soeMWKT2mzAmkgPaZH75 Y4kjFQIDAQABo4GbMIGYMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEF BQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBR2kZDOjdhBg/pZeLKwi2Q0xMR0 SjAfBgNVHSMEGDAWgBRszowNDU6BmnPLqBWQu9Pbc3MuwjAjBgNVHREEHDAaghgq LmFwcHMuc25vLm9wZW5zdGFjay5sYWIwDQYJKoZIhvcNAQELBQADggEBAJFae/LQ V8Q4wbiPjG50nguKsNGMGEfyQXPi2dVPAUbNiInKrTVypkyxMbSkPNuN0yCLXT/d 6Ejoti3JOhoesoatynuYHHsS3Uexw/thNFnkrl8pYFZAvLtLn71eFx2UnsYDbkMi 3BKU7ZaOMMm29wuhpD1WMcaY06W6kKpc25QP4PofaQ3dxbLIFR9kgK6C6biPOHjx S6oWbLv3Mcha/OExjcVS1eBRGs9Wxh+/xG7dEGEW9KQRvTkN3LicfkP69EggyFiR iK/oXoc1S37u7S0M6qELePrbce2l+t+7E1f6B1HnDm4C1l2QNjSdDRPCAjfUbyh1 qICnGFfbyNVreqQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDDBtpbmdy ZXNzLW9wZXJhdG9yQDE3NjQ4ODU2NjkwHhcNMjUxMjA0MjIwMTA4WhcNMjcxMjA0 MjIwMTA5WjAmMSQwIgYDVQQDDBtpbmdyZXNzLW9wZXJhdG9yQDE3NjQ4ODU2Njkw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDPIsiArSGYrQMSWVC7jykg n+dgqUcRbuXBGjik7h/16oHL0RyELDs58D9lBcmCIR0vo6mELuHgKO9B5SzpUo7r YFMj8vFZAKPxypfH0Ojcq+HpnWey6BsOJjMhSQRZPbjp1bI7T6xGglbVrEeS/uqX BZGhzKsYuwP0who/zt5W/ThyqHE1BcXOARXpKQF61m7mGekA7DpWuRMQJVHbGex9 VaNL7JHqU3R95u2w1uapiFzqX2E4tD2JkWkUvO5Wc+IO2u99in8HWIG2MoWUm/J6 LdPtbkiH2nw0X3m7Ne5wvR36Qs4yJ1wPE3YO2u6wlqLOSp899U2CL4PaBb0Wsv3V AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G A1UdDgQWBBRszowNDU6BmnPLqBWQu9Pbc3MuwjANBgkqhkiG9w0BAQsFAAOCAQEA V6BLcyY8MCxGp5o8w+iE7XA5TNex/472JouENB5Rl8Lqn2SQbqZ9PZ76mzeRt4si YIxFtRiaozc1BsibbkKacuYeLGs7AHziR87ll/K5SoS8ih3NpSIqUXy1QMTmdbBZ UQcwXbW9FZxwXWsZ8jVoAIvdifF5tGt2Y2J7RU02jrXXbRKlN7vm0s7OVUjuwOnq bxDPzwc4u7obeqIjSEEmqCaE5FJVXaBxkE2Prjro1Adxpy+R1q6NGWNp6TIEVifK +S3nD5yn+UizW49eTbi0piJ+sHndFRgarLzstfkdc++t1OpdSDBOMXp4kKES2pCC ttygdZTx0vensxU7P7bfYw== -----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-12-04T21:59:13Z" 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-12-04T22:05:34Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "10101" uid: 87b28b77-4ef7-4a07-b4aa-b9aa202854b0 - 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-12-04T21:59:15Z" 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":"90b2947d-5101-4de2-bef4-6acfb8950efe"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-12-04T21:59:15Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 90b2947d-5101-4de2-bef4-6acfb8950efe resourceVersion: "2767" uid: 285c38d3-c276-4310-99b8-7ef5ad135183 - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIIBj7XhvZT9+swDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc2NDg4NTYzOTAe Fw0yNTEyMDQyMjAwMzhaFw0yODAyMDIyMjAwMzlaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3NjQ4ODU2MzkwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtdhflhlr6CM3bIyLlDOkBwviUdeHU5VL/ EXayO9WY11qCFhdomdBFVaPqVhsYA92B9I+7133/ZSvHURjj10ZOlMdMl0jUDlNh t8ytdqidQ9+ZRRVBWAJ9yjTkf57DEe81KOvaI6tiAEw3J8RMfx2hjYd/lUM5GFI4 cX1jyfNTWcvdUmUv89Wwo0BBboxNj8G+f5tPejjipeb5LalvnXguJFdFxdqy3/r7 shJpQyEQu2kzLpGMsSj/EICEVy3WzmNhDRsMC9mlIU4cxKbEWjDLAIE3LZ6UxW6T sLP3X1WZMKzU5abXuRgLHQ0Kc3bCRYr60D/uy4QrTwlL55x+XhGTAgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTFLPrz tSPj976tw2DE0qiElM9FXTAfBgNVHSMEGDAWgBTFLPrztSPj976tw2DE0qiElM9F XTANBgkqhkiG9w0BAQsFAAOCAQEAYs+SnmZ4wJib7hVJFDXHeByuEpYXmPnrUWFg yOsThEbT4JE6slEHoaDfr7K+YTgRKVtbkZueULYgbF5un9kWlE+tF0yM9ebMaAyF AcWLO7uRXuD3IsF8EDyqwoivD3Dr6rroVlXIanRZ7NqPzM37BE0q23SSdLsscQuQ HKI7C9ZJXPdSDBR8rPM5nmrj3ZsyIeRXp2YOAqHkaZDpUcGJjp+YWwYpL2L9nHu9 guR2WAJ3NDkvTTF4gbKuyXCvGW67bzSmIBy9dM0JwVlGIdThXYtcBc+UhDLOZeLZ 3BOOU9vMptLiy+ZJW98gA45zDuLpFzuJfL9VcDF8wN6cJFkDmg== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2025-12-04T21:59:13Z" 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-12-04T21:59:13Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2025-12-04T22:00:50Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "5340" uid: fab37c8e-3485-4180-93de-b374e54be497 - 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-12-04T21:59:15Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"90b2947d-5101-4de2-bef4-6acfb8950efe"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2025-12-04T21:59:15Z" name: whereabouts-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 90b2947d-5101-4de2-bef4-6acfb8950efe resourceVersion: "2766" uid: a28780eb-9416-4ee7-b678-9bc1711cb893 kind: ConfigMapList metadata: resourceVersion: "48980"