load system certs for manager, and use correct location #2367
+30
−4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Recent changes made to operator remove the root ca bundle from enterprise components docker images and instead volume mount them into pods at runtime using tigera-ca-bundle. In cases where root certs are needed they're included, but if they're not needed, they're left out.
In Enterprise with Dex, the oidc provider is internal and thus public ca bundles aren't needed. However, when using
oidc.type=tigera
, voltron directly connects to the external OIDC provider. As such, this PR has been updated to include root ca bundles in Manager when Tigera is used as the oidc connector.Note: It is possible that a customer uses Tigera as an OIDC connector to a CA that is running inside the cluster, in which case public ca bundle is not needed. But this code ignores that corner case since there's no known customer use cases where that is true, and even if it is, loading the public bundle does no harm.
Additionally, this PR fixes a bug in Manager where the ca bundle directory + filename combination is not correct. This combination is dictated by the OS. See combinations here. Since we're using a ca bundle file of
ca-bundle.crt
, the only place it can be read from with that name is/etc/pki/tls/certs
For PR author
make gen-files
make gen-versions
For PR reviewers
A note for code reviewers - all pull requests must have the following:
kind/bug
if this is a bugfix.kind/enhancement
if this is a a new feature.enterprise
if this PR applies to Calico Enterprise only.