--- 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 "$SOURCE_DIRECTORY" ]; then log "FATAL ERROR: You must set the SOURCE_DIRECTORY env variable" exit 1 fi if [ ! -d "$DESTINATION_DIRECTORY" ]; then log "FATAL ERROR: Destination directory ($DESTINATION_DIRECTORY) does not exist" exit 1 fi sourcedir="${SOURCE_DIRECTORY}" log "Copying binaries from ${sourcedir}" # 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 find "${sourcedir}" -maxdepth 1 -mindepth 1 ! -type d -exec cp --remove-destination {} "${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.22.20 creationTimestamp: "2026-10-31T18:45:36Z" 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":"9dfe4d02-2c74-4092-a0b0-5ca17c89ea01"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T18:45:36Z" name: cni-copy-resources namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 9dfe4d02-2c74-4092-a0b0-5ca17c89ea01 resourceVersion: "2394" uid: e8345ea5-7c16-41b5-b9cf-a02e80a29345 - 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.22.20 creationTimestamp: "2026-10-31T18:45:36Z" 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-10-31T18:45:36Z" name: cni-sysctl-allowlist namespace: openshift-multus resourceVersion: "2389" uid: 7e7cbf2d-6192-42dd-b573-5cecc55b7657 - 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.22.20 creationTimestamp: "2026-10-31T18:45:36Z" 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":"9dfe4d02-2c74-4092-a0b0-5ca17c89ea01"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T18:45:36Z" name: default-cni-sysctl-allowlist namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 9dfe4d02-2c74-4092-a0b0-5ca17c89ea01 resourceVersion: "2388" uid: 4aff5370-007f-46df-bcc0-5927974eeed6 - apiVersion: v1 data: ca.crt: | -----BEGIN CERTIFICATE----- MIIDPDCCAiSgAwIBAgIIcagAFEdgcyAwDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMTE4NDMzMFoX DTM2MTAyODE4NDMzMFowJjESMBAGA1UECxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdy b290LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxDZN4V92NOFR g/8PqLK2hbglqX4biOVy7GQ77wDRlEMiodUsS+K4wIy8/A7hZCXAhcR3sN/pemFV dcn1+Xpj3FrxQfTqWITtH2yy7tcjouR2xcHbMooG2nJzrVQRfGDnYCVNq8U7nq86 ELHk2XEcBw2Bg4R7AKxLC/BUCX6KQiaWEAuOkhCXz0JipTB2pNvXduJ9oGdQntN+ 4qDtrAAYEBczbBrrfQsdEgwNXxdeOzUF5x0DtFHitNjQFWhxhNPonnQpW3vyAdFj xoShn92Nia1FisN12eHzZHxIFsCUp+XxTtuXSLxj5OK6WXjPh7pzl7pT1JO9Gms3 i+IhDSJqgQIDAQABo24wbDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0TAQH/BAUwAwEB /zBJBgNVHQ4EQgRAY8eqU7FWoYjAA0p3cBniOZSaU0DVc2povWCHpfHkm6ks/kaH ONpir+GbjltSadirizBu+G8IqR32Zaq+ETOARzANBgkqhkiG9w0BAQsFAAOCAQEA eZUCBdkA36czeJ4C3cln5P0LQ7akMJY1nVXt4hht7315ZEICwkjGFrdmRcBx5lRl frldn9gBl/u/lG5auip6QRP2iHU3ScP56EAAbG/TCUkeX14u1DoGL4iQgz6vorqS QElE2r9dYhul/ee4GzGWx1vRmsCUOlXnSAX5tl7xLLwOG8mG5ahCZEXmjs7tUXes mqI2wdE+jZomtos9gEeenUV25hhPxCxNOOAjj+3tR3SEh7JLjVfe6C7NO7wvx+Ck IncAkx2rQhYgwbearZdg5q2b5f+3Ia/1ZtJSh+p+9B1ovgJyJq6upikMb9gKoZ4h ttEaX9+3UAMi6gjPiHdZug== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8zCCAtugAwIBAgIIDekPDfNYedswDQYJKoZIhvcNAQELBQAwJjESMBAGA1UE CxMJb3BlbnNoaWZ0MRAwDgYDVQQDEwdyb290LWNhMB4XDTI2MTAzMTE4NDM0N1oX DTI3MTAzMTE4NDM0N1owMDESMBAGA1UEChMJb3BlbnNoaWZ0MRowGAYDVQQDExFv cGVuc2hpZnQtaW5ncmVzczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ANtziSYgNE5G9rryL9BNcuk3g6mlCWot21c3Jxgtl/i5fahrwweXmOl9ZlzHrWIt u/+f9p4IFztvSWwkdX/DSiLuIZfJa58U+7Dz2FqA3cSKL5X2kz2CiEJrW3lODpSB 42b4wfIEB6nbgTFpFRwDRTJ2LYE4W5YD+l7C5tlG3IV6qGUhsr2EBNqYjdDULfpS 9HBLicy1BZUlzBuQKrknqhiXhrr0GjTRR3Fjj9IVwLpcpIQNTOM1eJMM8ad3Iug1 vzr+RQjLiiZPE1G0PRcquj7jYLhLUHEQiCAQQUPLNCjKjsYsKtefX7ea5i8iDxW8 yYldqsPVwcirgiXyQSSNFz8CAwEAAaOCARkwggEVMA4GA1UdDwEB/wQEAwIFoDAd BgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBJBgNV HQ4EQgRAqT3Z0FXe7tymClqMuv8wfYJIRXm47FTZOmuA/7xFjNzXwYrIRdTER0d3 faR6S1NAFSVjq5Eu+ITOA4+cFivl1zBLBgNVHSMERDBCgEBjx6pTsVahiMADSndw GeI5lJpTQNVzami9YIel8eSbqSz+Roc42mKv4ZuOW1Jp2KuLMG74bwipHfZlqr4R M4BHMD4GA1UdEQQ3MDWCMyouYXBwcy43YThlZDY3MzAwZTJiZGZiNjgzNi5wcm9k LmtvbmZsdXgtb2NwLWNpLmRldjANBgkqhkiG9w0BAQsFAAOCAQEAtGEe7NYK7Sc/ yLvbOkejL3i9vPPPUXabrmHvW50zsfRITL87G6itVqOnc4hX4y9Y8wkZyJQJsZye Ja0Vz1hoOFCg0/c6w6JQUwk9XNSEhW47UNXPIjsr00y25aQ2xkHPVtDbVyJOhbTJ J3++0iX1jbLt4+s4GcNk+9MIIlUSOo60kpE4Erehe3PyPOeCbrkCwGoVFxi8IbCN QWfRZJFi/fSrK4lJcg8DETPecYBRDVBHXL2FxxjO38pI5WTKTeEaueyWSgPUaCxd DUDWicX6nSAuhuI7siD7sEZqToIIFFdc1mlxrVPLacZBkpTxX3VmkOAW2Bkc8jvP YKZ9kQWHsw== -----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-10-31T18:45:51Z" 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-10-31T18:45:51Z" name: kube-root-ca.crt namespace: openshift-multus resourceVersion: "3691" uid: 68d2bae2-a997-4cf7-86f1-cc9128ffbcf0 - 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-10-31T18:45:37Z" 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":"9dfe4d02-2c74-4092-a0b0-5ca17c89ea01"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T18:45:37Z" name: multus-daemon-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 9dfe4d02-2c74-4092-a0b0-5ca17c89ea01 resourceVersion: "2405" uid: ce698ed9-4377-4178-bc17-0f6048de0efe - apiVersion: v1 data: service-ca.crt: | -----BEGIN CERTIFICATE----- MIIDUTCCAjmgAwIBAgIILqeHETe5y3owDQYJKoZIhvcNAQELBQAwNjE0MDIGA1UE Awwrb3BlbnNoaWZ0LXNlcnZpY2Utc2VydmluZy1zaWduZXJAMTc5MzQ3Mjc0MjAe Fw0yNjEwMzExODUyMjFaFw0yODEyMjkxODUyMjJaMDYxNDAyBgNVBAMMK29wZW5z aGlmdC1zZXJ2aWNlLXNlcnZpbmctc2lnbmVyQDE3OTM0NzI3NDIwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQD0ANVcoSwSNPJMxSDOeHYMrknxcYd1f5Ug 0iaQXOXmKmFPRwtbWbIfZPDgRprhQMIazysBkoHQYodvXFmfcek/X7fZjiHs6RpA 1fI0R9D0TGe383wiFc2ERyVRv47m2479m15xLXbqDYFpC+rIz8OL680UZkZHds16 NrtOaF4rXJxQfneZ7R+tCwDcsq4NohCyL80Vli+7YkJclOZ1+uXdMnrCW/+jjVaN vqvq86+Fhjt9iQCRjzy/j0L0yAgsXg+b6BaGdVQqcbNGioWy93q2ybzhoB9BxrbO LPsw20H6COSpknE9ffEH0itjoedcEBp7xDpWsx69UW54bJUNPee/AgMBAAGjYzBh MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBS6Sk0D Vr+hEj/4ZhSmv7ph7Z3FLjAfBgNVHSMEGDAWgBS6Sk0DVr+hEj/4ZhSmv7ph7Z3F LjANBgkqhkiG9w0BAQsFAAOCAQEAahKTFXAvOoMSAozU9ikFgWi60Y10x1VTAVrc 8L5ZQ7ueGe0/Q9qaOUhgPRh+vgRedGhE3oyKa0VI3Bo30qtSChowhv6JiS7O28hk NgZFfRMCfBIV0YK0VVl8wfNQ00e+X1g68F1xlP0pr7je7bQ8zri1CmZfijcsQMt8 KM2jqJ9hkQdQqYO8zR+gJFB8I48BNn5AL0ukjnmVyOKf6usy300ybN2SQlyzbdEg 0uwnGDvmGsjf++XyjWDqcYFNw64V+L3tgCkEW8tZHeBEm6DFoCmBwi8EI+DegJne ZLOpe/vyfwKtBrI1O7mYMPvov7WhhIQtyharTLDPbpZ27ALeMQ== -----END CERTIFICATE----- kind: ConfigMap metadata: annotations: service.beta.openshift.io/inject-cabundle: "true" creationTimestamp: "2026-10-31T18:45:51Z" 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-10-31T18:45:51Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:service-ca.crt: {} manager: service-ca-operator operation: Update time: "2026-10-31T18:52:38Z" name: openshift-service-ca.crt namespace: openshift-multus resourceVersion: "7459" uid: e292a3e1-f64d-4fa6-882a-6027eafc8722 - 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-10-31T18:45:37Z" managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:data: f:whereabouts.conf: {} f:metadata: f:ownerReferences: k:{"uid":"9dfe4d02-2c74-4092-a0b0-5ca17c89ea01"}: {} manager: cluster-network-operator/operconfig operation: Apply time: "2026-10-31T18:45:37Z" name: whereabouts-flatfile-config namespace: openshift-multus ownerReferences: - apiVersion: operator.openshift.io/v1 blockOwnerDeletion: true controller: true kind: Network name: cluster uid: 9dfe4d02-2c74-4092-a0b0-5ca17c89ea01 resourceVersion: "2400" uid: 3dcfa19b-560e-4d70-8c06-8e2f2053cbd1 kind: ConfigMapList metadata: resourceVersion: "11273"