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

"latest" tag does not exist on docker hub #302

Open
ShakataGaNai opened this issue Mar 24, 2024 · 9 comments
Open

"latest" tag does not exist on docker hub #302

ShakataGaNai opened this issue Mar 24, 2024 · 9 comments

Comments

@ShakataGaNai
Copy link

Running kubectl apply -f https://raw.githubusercontent.com/rancher/system-upgrade-controller/master/manifests/system-upgrade-controller.yaml, as specified in the README.md will fail. That file references image: rancher/system-upgrade-controller:latest which does not exist on docker hub today https://hub.docker.com/r/rancher/system-upgrade-controller/tags.

image

Manual test screenshot.

@aleksasiriski
Copy link

+1 Happening to me as well, both on my cluster on Hetzner Falkenstein and locally in Serbia.

@onno204
Copy link

onno204 commented Mar 27, 2024

@SISheogorath Could you look into this issue?
It seems to be caused by your commit 4e31e5d6a0926df9f370a06c9ea3250ee1e088b1.

This currently breaks some installations because the latest tag does not exists on the docker hub. I suggest reverting the commit, and recommiting once the latest tag has been added to the docker hub.

@mysticaltech
Copy link

Tons of issues for hour project https://github.com/kube-hetzner/terraform-hcloud-kube-hetzner because of this. Please fix ASAP folks.

@SISheogorath
Copy link
Contributor

SISheogorath commented Mar 28, 2024

I mean, rolling back is an option, but will also mean you will rollout a 1 year old version of the controller. Of course that's better than not functioning at all, but also not ideal. If we revert the change, we should at least deploy the latest version of the controller.

The better fix would certainly be to use the a proper kustomization or a generated yaml from a release. If you rely on the manifests in the repository the way you do right now, it'll certainly miss the required permissions as well.

@mysticaltech
Copy link

mysticaltech commented Mar 28, 2024

@SISheogorath Was thinking the same. If I understood correctly, all we need to do is remove the latest tag from the manifest via our kustomization and replace with the latest tag version on docker hub, please confirm?

@SISheogorath
Copy link
Contributor

SISheogorath commented Mar 28, 2024

The quickest solution would be:

# kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- github.com/rancher/system-upgrade-controller
images:
- name: rancher/system-upgrade-controller
  newTag: v0.13.4

This would include all manifests and set the correct version (for now).

@mysticaltech
Copy link

@SISheogorath Thank you, appreciate it.

SISheogorath added a commit to SISheogorath/system-upgrade-controller that referenced this issue Mar 28, 2024
This patch adds a push step for a latest image. Various CI steps
actually build a latest image but it's never pushed. This patch adds a
step in the release pipeline to also push the release as latest to
Docker Hub.

This should resolve issues people experience when using plain manifests
from the repository which still references a latest image, which
currently doesn't exist.

References:
rancher#302
SISheogorath added a commit to SISheogorath/system-upgrade-controller that referenced this issue Mar 28, 2024
This patch adds a push step for a latest image. Various CI steps
actually build a latest image but it's never pushed. This patch adds a
step in the release pipeline to also push the release as latest to
Docker Hub.

This should resolve issues people experience when using plain manifests
from the repository which still references a latest image, which
currently doesn't exist.

References:
rancher#302
@mysticaltech
Copy link

The quickest solution would be:

# kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- github.com/rancher/system-upgrade-controller
images:
- name: rancher/system-upgrade-controller
  newTag: v0.13.4

This would include all manifests and set the correct version (for now).

Here's the same in kustomization patch format for anyone that needs it, the following goes into the patch array:

    {
      target = {
        group     = "apps"
        version   = "v1"
        kind      = "Deployment"
        name      = "system-upgrade-controller"
        namespace = "system-upgrade"
      }
      patch = <<-EOF
        - op: replace
          path: /spec/template/spec/containers/0/image
          value: rancher/system-upgrade-controller:v0.13.4
      EOF
    }

@dweomer
Copy link
Contributor

dweomer commented Jun 28, 2024

You should want to use the release manifest, i.e.: https://github.com/rancher/system-upgrade-controller/releases/download/v0.13.4/system-upgrade-controller.yaml

The manifests/system-upgrade-controller.yaml is for [build|dev]-time testing and validation and also leveraged as a template for kustomize at release. Please see: https://github.com/rancher/system-upgrade-controller/blob/master/scripts/package-controller#L37

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants