-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CRDS stack and workspace.auto are too long #750
Comments
@robinlioret did you previously install the v1 operator on this cluster? And if so did you follow the instructions to remove the v1 installation? |
No, I installed the crds from the tag I edited the initial message to add this missing step. You should be able to reproduce the bug with the following script: cd
git clone https://github.com/pulumi/pulumi-kubernetes-operator.git
cd pulumi-kubernetes-operator
git checkout v2.0.0-beta.2
kind create cluster --name pulumi-operator-test
kubectl config set-context kind-pulumi-operator-test
kubectl apply -f deploy/crds But it works if you replace the last EDIT: However, this remains a critical issue since it prevent any update (destroy then create) of the CRDs: when a CRD is destroyed, all the belonging resources are destroyed with it (see links below). So updating the CRDs will automatically cause deletion of the resources of the Pulumi Kubernetes Operator : program, stacks, provider config, ... With Argocd or Flux, the blast radius may be reduces because of the self-healing capabilities. But, the issue remains and may triggers deletion of the resources managed by Pulumi. I'm looking for a solution to extend the length limit of the annotations Links: |
Another workaround to consider is to use server-side apply, e.g. To address this ticket, we'll add some clarification to the installation instructions. |
Good point, it worked properly. Thanks ! |
What happened?
When creating the CRDs, I have the following messages:
Example
I'll be using a kind cluster
cd
git clone https://github.com/pulumi/pulumi-kubernetes-operator.git && cd pulumi-kubernetes-operator
git checkout v2.0.0-beta.2
kind create cluster --name pulumi-operator-test
kubectl config set-context kind-pulumi-operator-test
kubectl apply -f deploy/crds
Output:
Clean up
kind delete cluster --name pulumi-operator-test
cd && rm -rf ./pulumi-kubernetes-operator
Output of
pulumi about
Not relevant
Additional context
Notes
Workaround
The better way I found to install the operator was to use
kubectl create -f https://raw.githubusercontent.com/pulumi/pulumi-kubernetes-operator/refs/heads/master/deploy/yaml/install.yaml
This is dangerous : if the chart is updated during a job, the job can potentially be deleted as well.
With ArgoCD. The only way I found is to enable the Replace sync option. But this has the same drawback as the create / replace kubectl command.
Solution "ideas"
Separate the problematic CRDs into multiple resources. I don't know there is a clean way to extend the limitation of the metadata (maybe with OPA ?) or if there is a way to skip completely the last-configuration-applied when applying.
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).
The text was updated successfully, but these errors were encountered: