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

Upgrade from 0.11.0 to 0.12.0 failed #707

Open
shanduur opened this issue Feb 1, 2025 · 2 comments
Open

Upgrade from 0.11.0 to 0.12.0 failed #707

shanduur opened this issue Feb 1, 2025 · 2 comments
Labels
area/artifacts Issues or PRs related to the hosting of release artifacts kind/bug Categorizes issue or PR as related to a bug. triage/needs-information Indicates an issue needs more information in order to work on it.

Comments

@shanduur
Copy link
Member

shanduur commented Feb 1, 2025

What steps did you take and what happened:

Helm install failed for release capi-operator-system/capi-operator with chart [email protected]: cannot patch "addonproviders.operator.cluster.x-k8s.io" with kind CustomResourceDefinition: CustomResourceDefinition.apiextensions.k8s.io "addonproviders.operator.cluster.x-k8s.io" is invalid: spec.conversion.webhookClientConfig.caBundle: Invalid value: []byte{0xa}: unable to load root certificates: unable to parse bytes as PEM block && cannot patch "bootstrapproviders.operator.cluster.x-k8s.io" with kind CustomResourceDefinition: CustomResourceDefinition.apiextensions.k8s.io "bootstrapproviders.operator.cluster.x-k8s.io" is invalid: spec.conversion.webhookClientConfig.caBundle: Invalid value: []byte{0xa}: unable to load root certificates: unable to parse bytes as PEM block && cannot patch "controlplaneproviders.operator.cluster.x-k8s.io" with kind CustomResourceDefinition: CustomResourceDefinition.apiextensions.k8s.io "controlplaneproviders.operator.cluster.x-k8s.io" is invalid: spec.conversion.webhookClientConfig.caBundle: Invalid value: []byte{0xa}: unable to load root certificates: unable to parse bytes as PEM block && cannot patch "coreproviders.operator.cluster.x-k8s.io" with kind CustomResourceDefinition: CustomResourceDefinition.apiextensions.k8s.io "coreproviders.operator.cluster.x-k8s.io" is invalid: spec.conversion.webhookClientConfig.caBundle: Invalid value: []byte{0xa}: unable to load root certificates: unable to parse bytes as PEM block && cannot patch "infrastructureproviders.operator.cluster.x-k8s.io" with kind CustomResourceDefinition: CustomResourceDefinition.apiextensions.k8s.io "infrastructureproviders.operator.cluster.x-k8s.io" is invalid: spec.conversion.webhookClientConfig.caBundle: Invalid value: []byte{0xa}: unable to load root certificates: unable to parse bytes as PEM block && cannot patch "ipamproviders.operator.cluster.x-k8s.io" with kind CustomResourceDefinition: CustomResourceDefinition.apiextensions.k8s.io "ipamproviders.operator.cluster.x-k8s.io" is invalid: spec.conversion.webhookClientConfig.caBundle: Invalid value: []byte{0xa}: unable to load root certificates: unable to parse bytes as PEM block && cannot patch "runtimeextensionproviders.operator.cluster.x-k8s.io" with kind CustomResourceDefinition: CustomResourceDefinition.apiextensions.k8s.io "runtimeextensionproviders.operator.cluster.x-k8s.io" is invalid: spec.conversion.webhookClientConfig.caBundle: Invalid value: []byte{0xa}: unable to load root certificates: unable to parse bytes as PEM block

What did you expect to happen:
Installation succeeded

Anything else you would like to add:
[Miscellaneous information that will assist in solving the issue.]

Environment:

  • Cluster-api-operator version: 0.11.0 -> 0.12.0 -> 0.16.0
  • Cluster-api version:
  • Minikube/KIND version: N/A
  • Kubernetes version: (use kubectl version): v1.31.5
  • OS (e.g. from /etc/os-release): Debian

/kind bug
/area artifacts

@k8s-ci-robot k8s-ci-robot added kind/bug Categorizes issue or PR as related to a bug. area/artifacts Issues or PRs related to the hosting of release artifacts needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Feb 1, 2025
@shanduur shanduur changed the title Installation failed Upgrade from 0.11.0 to 0.12.0 failed Feb 1, 2025
@shanduur
Copy link
Member Author

shanduur commented Feb 1, 2025

Upgrading to 0.16.0 still shows the same error. Removing release and installing 0.16.0 worked fine, but this looks like operational nightmare, as required me to remove all CRDs to complete the installation.

@furkatgofurov7
Copy link
Member

furkatgofurov7 commented Feb 6, 2025

/triage needs-information

Thanks for reporting the issue.

The problem causing this is that our CRDs have an invalid CA Bundle (starting from k8s v1.31 specifically) that needs to be removed (a more detailed explanation on this topic is in https://kubernetes.slack.com/archives/C0EG7JC6T/p1722441161968339 slack thread).

We removed the CA bundle in #591 but did not backport it to older releases (sorry for that), and it was part of the
https://github.com/kubernetes-sigs/cluster-api-operator/releases/tag/v0.14.0 release and onwards. So, if you had the operator release installed >=v0.14.0 from the beginning and upgraded to newer releases of the operator, you would not have seen it 😄 .

Since we can't backport the changes to the v0.11/2/3 release series anymore, simply because we don't support those older branches (currently we are maintaining the latest - 1 release series, v0.16 & v0.15), can we close this issue?

@k8s-ci-robot k8s-ci-robot added triage/needs-information Indicates an issue needs more information in order to work on it. and removed needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Feb 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/artifacts Issues or PRs related to the hosting of release artifacts kind/bug Categorizes issue or PR as related to a bug. triage/needs-information Indicates an issue needs more information in order to work on it.
Projects
None yet
Development

No branches or pull requests

3 participants