Skip to content

[release-1.29] Manually Cherrypick 1775#1824

Merged
istio-testing merged 4 commits intoistio:release-1.29from
ilrudie:cherry-pick-ca-reload-release-1.29
Apr 2, 2026
Merged

[release-1.29] Manually Cherrypick 1775#1824
istio-testing merged 4 commits intoistio:release-1.29from
ilrudie:cherry-pick-ca-reload-release-1.29

Conversation

@ilrudie
Copy link
Copy Markdown
Contributor

@ilrudie ilrudie commented Apr 2, 2026

  1. Cherry-pick identity: reload CA root cert channel on file change #1775 to release-1.29
  2. Minimal fixes from subsequent work to adopt a newer debounce notifier
  3. Apply the commit to disable hot-reload if necessary. This presently defaults to true which may not be the desired default
  4. suppress a clippy error, it's only because of the gate for this feature and I don't want to refactor on a release branch unless strictly necessary

jlojosnegros and others added 3 commits April 2, 2026 11:58
* RootCertManager: Add new  CrlCertManager-like struct

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

* caclient: rebuild channel when root cert changes

Use the new RootCertManager to rebuild the TLS gRPC channel when a root
cert change is noted.

Need to add some fields to store the information to rebuild the channel.

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

* small adaptations

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

* Some unit tests

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

* solve some compilation problems

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

* delete is_dirty as it is not used

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

* some clippy adjustments

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

* adding some comments

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

* addressing comments

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

* log write lock wait time after TLS channel rebuild

Add write_lock_wait_ms to the debug log emitted after a successful
root cert hot-reload, so contention on the RwLock is observable in
logs without requiring additional instrumentation.

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>

---------

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>
Signed-off-by: Ian Rudie <ian.rudie@solo.io>
Introduces a boolean env var CA_CERT_WATCHER (default: true) that allows
operators to disable the CA root cert file watcher at runtime.
When set to false, no watcher thread is started and the gRPC channel is never
rebuilt on cert rotation — the startup-time cert is retained permanently.

The flag is only effective when ca_root_cert is a file path; Static and
Default certs never start a watcher regardless.

Signed-off-by: Jose Luis Ojosnegros Manchón <jojosneg@redhat.com>
@ilrudie ilrudie requested a review from a team as a code owner April 2, 2026 16:31
@istio-testing istio-testing added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Apr 2, 2026
Signed-off-by: Ian Rudie <ian.rudie@solo.io>
@istio-testing istio-testing merged commit f2e2d38 into istio:release-1.29 Apr 2, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants