Open crenshaw-dev opened 1 year ago
The error comes from here:
// updateSettingsFromSecret transfers settings from a Kubernetes secret into an ArgoCDSettings struct.
func (mgr *SettingsManager) updateSettingsFromSecret(settings *ArgoCDSettings, argoCDSecret *apiv1.Secret, secrets []*apiv1.Secret) error {
var errs []error
secretKey, ok := argoCDSecret.Data[settingServerSignatureKey]
if ok {
settings.ServerSignature = secretKey
} else {
errs = append(errs, &incompleteSettingsError{message: "server.secretkey is missing"})
}
I suspect that we need to just ignore that "error" when running in core mode.
This likely doesn't help at this point (I'm quite surprised this bug is still a thing), but a "fix" for this is to run anything with the argocd
CLI when in core mode.
I've already done an argocd login --core
here, but:
$ k get secret argocd-secret
NAME TYPE DATA AGE
argocd-secret Opaque 0 69s
$ argocd app list
NAME CLUSTER NAMESPACE PROJECT STATUS HEALTH SYNCPOLICY CONDITIONS REPO PATH TARGET
$ k get secret argocd-secret
NAME TYPE DATA AGE
argocd-secret Opaque 3 96s
So the CLI is able to update this secret, but the pods don't, and it's installed in a non-functional state.
I thought I was losing my mind when I tried to automate core installs, because in all of my working examples I'd run the CLI at some point to see what was happening.
It would be great to get this fixed, the entire reason we want to use ArgoCD Core is for automated hands-off clusters.
Discussed in https://github.com/argoproj/argo-cd/discussions/12835