Hello!
When trying to install/upgrade the Doppler Kubernetes Operator, I’m experiencing an issue when providing a namespace + --create-namespace
. It seems like your chart creates a namespace on its own, which can confuse regular Helm users (IMO) who are used to provide and choose their own (long discussion about it here) :
# Namespace resource created by default ()
helm template \
--repo https://helm.doppler.com \
--version 1.2.0 \
doppler-operator doppler-kubernetes-operator \
grep -C5 "kind: Namespace"
# Not the case in other operators (e.g. Elastic ECK Operator)
helm template \
--repo https://helm.elastic.co \
--version 2.6.1 \
-n elastic-system --create-namespace \
eck-operator eck-operator | grep -C5 "kind: Namespace"
Here’s what happen on a fresh local k8s cluster (kind)
# Trying to install the operator in a given namespace
$ helm upgrade -i \
--repo https://helm.doppler.com \
--version 1.2.0 \
-n doppler-operator-system --create-namespace \
doppler-operator doppler-kubernetes-operator
Release "doppler-operator" does not exist. Installing it now.
Error: namespaces "doppler-operator-system" already exists
# Now Helm created the 'doppler-operator-system' namespace above, retrying without --create-namespace
$ helm upgrade -i \
--repo https://helm.doppler.com \
--version 1.2.0 \
-n doppler-operator-system \
doppler-operator doppler-kubernetes-operator
Release "doppler-operator" has been upgraded. Happy Helming!
NAME: doppler-operator
LAST DEPLOYED: Mon Feb 6 17:04:51 2023
NAMESPACE: doppler-operator-system
STATUS: deployed
REVISION: 2
Is there any specific value to set to avoid this behaviour? I do understand the fact that the NS is included in the chart to ease its deployment, but it could be a bit more flexible IMO, by letting the user choose the destination namespace (e.g. namespaceOverride
)
Cheers!