argo-cd: failed to convert *unstructured.Unstructured to *v1beta1.Ingress: no kind "Ingress" is registered for version "networking.k8s.io/v1"

Describe the bug I get this annoying error when using v1 ingress:

ComparisonError
failed to convert *unstructured.Unstructured to *v1beta1.Ingress: no kind "Ingress" is registered for version "networking.k8s.io/v1" in scheme "pkg/runtime/scheme.go:101"

Funny thing is it sync anyway and it alternates between showing this error and not showing on Refresh. To Reproduce

It happens when using networking.k8s.io/v1 Ingress in application

Version

$ argocd version
argocd: v2.0.1+33eaf11
  BuildDate: 2021-04-15T22:31:51Z
  GitCommit: 33eaf11e3abd8c761c726e815cbb4b6af7dcb030
  GitTreeState: clean
  GoVersion: go1.16
  Compiler: gc
  Platform: linux/amd64

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Reactions: 5
  • Comments: 24 (8 by maintainers)

Most upvoted comments

@eestolano Sorry that did not fix the issue. I still see the following error after upgrading ArgoCD to v2.2.0

failed to convert *unstructured.Unstructured to *v1beta1.Ingress: no kind "Ingress" is registered for version "networking.k8s.io/v1" in scheme "pkg/runtime/scheme.go:101"

Can we reopen the issue as https://github.com/argoproj/gitops-engine/pull/335 did not really fix it

While planning to test the image I realized that I had 2 application controller pods. One of them from a deployment template running v1.0.7 and the other one from the more modern StatefulSet running the intended v2.1.2.

Yes, that would absolutely cause the problem! It also explains the flapping in health status from green to red when you reproduced the issue. I’m actually surprised this was the only issue that you were facing given that you were running two controller pods with such drastic versions.

@jessesuen The changes in https://github.com/argoproj/gitops-engine/pull/335 hasn’t fixed this issue. This error might soon affect many people who are upgrading Kubernetes clusters to 1.20 and above. As stated by @eestolano in v1.22 you can’t even use v1beta1 as a rollback/workaround anymore.

I am using v2.2.1+122ecef and same issue

This means upgrading the cluster won’t help

This is my assumption as well. Haven’t yet tested on k8s 1.22, but on 1.21 I’m seeing all sorts of issues with the networking.k8s.io/v1 API for example.

Seems Argo is bundling an outdated Helm/apiserver library which lacks newer API versions and resources. This in turn makes some templates and checks fail due to a deprecated version being reported as available.

@eestolano The latest ArgoCD v2.2.0 updated gitops-engine to 0.5.1, which includes the fix!