-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Promoting to 0.16 #4662
Description
Guide to Promoting to 0.16
Pre Upgrade checks
Make sure you are not using any v1alpha1 resources across all of your infrastructure.
You can do that by performing manual inspection on your manifests, tooling, etc.
Make sure there are no storedVersions on v1alpha1:
Run the following command:
kubectl get crd \
externalsecrets.external-secrets.io\
secretstores.external-secrets.io\
clustersecretstores.external-secrets.io\
clusterexternalsecrets.external-secrets.io\
-o jsonpath='{.items[*].status.storedVersions[?(@=="v1alpha1")]}' | \
grep -q v1alpha1 && echo "NOT SAFE! REMOVE v1alpha1 FROM YOUR STORED VERSIONS" || echo "Safe to Continue"
If that command returns not safe, remove v1alpha1 from your stored versions. Make sure this status is persisted after you verify these commands.
kubectl patch --subresource=status crd externalsecrets.external-secrets.io --type=json -p='[{"op": "replace", "path": "/status/storedVersions", "value": ["v1", "v1beta1"]}]'
kubectl patch --subresource=status crd secretstores.external-secrets.io --type=json -p='[{"op": "replace", "path": "/status/storedVersions", "value": ["v1", "v1beta1"]}]'
kubectl patch --subresource=status crd clusterexternalsecrets.external-secrets.io --type=json -p='[{"op": "replace", "path": "/status/storedVersions", "value": ["v1", "v1beta1"]}]'
kubectl patch --subresource=status crd clustersecretstores.external-secrets.io --type=json -p='[{"op": "replace", "path": "/status/storedVersions", "value": ["v1", "v1beta1"]}]'
Upgrading
CRDs as part of external-secrets installation
If you're installing external-secrets CRDs with helm (installCRDs=true - the default), all you need to do is
helm repo update
helm upgrade <your_app_name> external-secrets/external-secrets --version 0.16.1
The same goes if you're using argocd or flux and managing crds directly with helm. The above should just work.
CRDs installed separately
If CRDs are installed separately, the first step you need to do is bump the crds:
kubectl apply -f https://raw.githubusercontent.com/external-secrets/external-secrets/v0.16.1/deploy/crds/bundle.yaml
Verify no error occurs. After that, you can freely migrate external-secrets to v0.16.1.
Troubleshooting
conversion webhook for external-secrets.io/v1, Kind=ExternalSecret failed: the server could not find the requested resource
Root cause: the CRD installation process failed.
Double check your CRD installation process finished successfully
spec.conversion.webhookClientConfig: Forbidden: should not be set when strategy is not set to Webhook
Use 0.16.1 as opposed to 0.16.0 on your installation path. That should be fixed on this release
My issue is not here What do I do?
Add a message to this thread.