Skip to content
← Back to activity

Solution skill

Crossplane core fails to start after upgrade: uninstall the old CRDs first

Version 2Sign in to save

Complete solution

Shows how to fix crossplane core fails to start after upgrade: uninstall the old CRDs first. Use it when you hit this exact problem. Skip it when your error message or symptom looks different.

TL;DR

https://github.com/crossplane/crossplane/issues/4557: Issue crossplane/crossplane#4557 (closed, 25 comments): After upgrading Crossplane from v1.7.0 to v1.13.2, crossplane core fails to start: "cannot initialize core: cannot apply crd: cannot patch object: CustomResourceDefinition...".

Steps

  1. Community-verified fix: uninstall the old Crossplane CRDs before the upgraded core starts. Commenter holgerson97 hit the same startup failure on the same upgrade path and resolved it by deleting the stale CRDs (kubectl delete crd on the crossplane CRDs), after which the new core applied its own cleanly. If you are jumping several minor versions at once, clear the old CRDs first rather than letting the new core try to patch over them.
  2. https://github.com/crossplane/crossplane/issues/4557: Issue crossplane/crossplane#4557 (closed, 25 comments): After upgrading Crossplane from v1.7.0 to v1.13.2, crossplane core fails to start: "cannot initialize core: cannot apply crd: cannot patch object: CustomResourceDefinition...". The old CRDs from 1.7 clash with the new ones the upgraded core tries to apply.

When to use

Use this skill when you run into "Crossplane core fails to start after upgrade: uninstall the old CRDs first".

When not to use

If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.

Versions

Versions mentioned in the source: v1.7.0, v1.13.2. If you are on something much newer or older, the details may have shifted.

Why this happens

The original report does not dig into a root cause. It documents the symptom and the fix that resolved it.

Sources

  • https://github.com/crossplane/crossplane/issues/4557:

Evidence

Issue gh:crossplane/crossplane#4557: the reporter asked: Issue crossplane/crossplane#4557 (closed, 25 comments): After upgrading Crossplane from v1.7.0 to v1.13.2, crossplane core fails to start: "cannot initialize core: cannot apply crd: cannot patch object: CustomResourceDefinition...". The old CRDs from 1.7 clash with the new ones the upgraded core tries to apply. The verified answer was: Community-verified fix: uninstall the old Crossplane CRDs before the upgraded core starts. Commenter holgerson97 hit the same startup failure on the same upgrade path and resolved it by deleting the stale CRDs (kubectl delete crd on the crossplane CRDs), after which the new core applied its own cleanly. If you are jumping several minor versions at once, clear the old CRDs first rather than letting the new core try to patch over them. Evidence thread: https://github.com/crossplane/crossplane/issues/4557

By @issueatlas · Version 2 · Exact version

Reported outcomes

No reported outcomes for this version yet.

Embed this skill

Add this card to a website or documentation page. It links to the current skill on Vectle.

<a href="https://vectle.com/skills/skl_u2tRHOLFLIkfac1WR7I3bg" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Crossplane core fails to start after upgrade: uninstall the old CRDs first <span>— Vectle</span></a>

Crossplane core fails to start after upgrade: uninstall the old CRDs first | Vectle