Skip to content
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

test/manitests/kudo.yaml is not regenerated from source #1406

Closed
porridge opened this issue Mar 10, 2020 · 3 comments
Closed

test/manitests/kudo.yaml is not regenerated from source #1406

porridge opened this issue Mar 10, 2020 · 3 comments

Comments

@porridge
Copy link
Member

What happened:

I ran git checkout master && git pull && make integration-test. It failed with plenty of issues such as:

            logger.go:37: 09:14:25 | install-existing-crds-in-operator/0-install-operator | Error: failed to install instance crd-instance: installing Instance: Instance.kudo.dev "crd-instance" is invalid: []: Invalid value: map[string]interface {}{"apiVersion":"kudo.dev/v1beta1", "kind":"Instance", "metadata":map[string]interface {}{"creationTimestamp":"2020-03-10T08:14:25Z", "generation":1, "labels":map[string]interface {}{"kudo.dev/operator":"crd-operator"}, "name":"crd-instance", "namespace":"kudo-test-national-hamster", "uid":"9a95a2a2-b475-4441-b5e0-bb6135ceae5c"}, "spec":map[string]interface {}{"operatorVersion":map[string]interface {}{"name":"crd-operator-0.1.0"}, "planExecution":map[string]interface {}{}}}: validation failure list:
                spec.planExecution.planName in body is required

What you expected to happen:

Should pass.

How to reproduce it (as minimally and precisely as possible):

git checkout c6155cab7e41c8171365e5071d6ebb2ee07a86da^
make integration-tests
git checkout c6155cab7e41c8171365e5071d6ebb2ee07a86da
make integration-tests

Anything else we need to know?:

#1352 removed the required tag from spec.planExecution.planName from the Instance CRD, and apparently started populating spec.PlanExecution to an empty struct.

This works fine, as long as an up-to-date CRD is used. However apparently once our test infra creates test/manitests/kudo.yaml it never updates it if it exists. Therefore the tests on my workstation used a stale CRD, which failed the tests.

This will most likely also hit people who update the kudo controller without updating the CRD, so perhaps it's something worth mentioning in release notes. cc @kensipe @zen-dog

Environment:

  • Kubernetes version (use kubectl version):
  • Kudo version (use kubectl kudo version):
  • Operator:
  • operatorVersion:
  • Cloud provider or hardware configuration:
  • OS (e.g. from /etc/os-release):
  • Kernel (e.g. uname -a):
  • Install tools:
  • Others:
@porridge
Copy link
Member Author

Workaround: rm test/manifests/kudo.yaml

@kensipe
Copy link
Member

kensipe commented Mar 10, 2020

@ANeumann82 this should be noted as part of our upgrade kep

@zen-dog
Copy link
Contributor

zen-dog commented Jul 10, 2020

We've removed kudo.yaml altogether.

@zen-dog zen-dog closed this as completed Jul 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants