crossplane/uptest

Uptest clears package cache during import tests resulting unhealthy providers

Opened this issue · 0 comments

What happened?

In provider kubernetes, I want to test some alpha features using uptest. I am using hooks to patch DeploymentRuntimeConfig with feature flags which works fine. However, I am observing provider resource reporting unhealthy after each example preventing rollout of new config to the provider controller.

Upon further investigation, I noticed that this is because how we handle imports. It looks like, we stop / start Crossplane which causes losing the package in the cache which was loaded in the beginning of e2e flow.

Based on my offline conversations with @sergenyalcin, we do this to stop / start providers to clear the state cache in the providers to ensure we validate import functionality. We should achieve the same by patching the replicas in the respective DeploymentRuntimeConfig.

How can we reproduce it?

Run e2e with uptest and check provider health using:

❯ kubectl get providers.pkg.crossplane.io
NAME                  INSTALLED   HEALTHY   PACKAGE                                          AGE
provider-kubernetes   True        False     provider-kubernetes-v0.14.0-rc0.60.gdb2a37c.gz   59m

What environment did it happen in?

  • Uptest Version: v0.9.0