Fix association with custom cert without CA #5314
Merged
+62
−41
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.
Follow-up of #5277 to adress the case of a custom cert without CA (issued by a well-known certificate authority).
In this case, the CA is configured but the CA cert is not provided, which is translated in the
AssocConf
stored in an annotation of the associated resource toCASecretName
defined andCACertProvided
set tofalse
. I did not rechallenge this logic.cloud-on-k8s/pkg/controller/association/ca.go
Lines 64 to 65 in 721cccf
The main fix is to replace the use of
CAIsConfigured
byGetCACertProvided
when we setup a CA config setting.This also fixes Agent->Fleet where we forgot to check that
CAIsConfigured()
to setup the CA env var (discovered in #5240 (review))And finally, I noticed that we could reuse
WriteAssocsToConfigHash
which gives the advantage of taking into account theauthSecret
content in the annotated config hash.Changes:
GetCACertProvided
instead ofCAIsConfigured
for KB|ENT|EMS->x associationsGetCACertProvided
WriteAssocsToConfigHash
to useGetCACertProvided
instead ofCAIsConfigured
WriteAssocsToConfigHash
for APM|ENT|EMS->x associations