TilBlechschmidt/WebGrid

Failed to pull image "webgrid/api"

madhank93 opened this issue Β· 4 comments

πŸ› Bug description

Using helm chart failed to pull images (webgrid-api, webgrid-manager, webgrid-metrics, webgrid-orchestrator, webgrid-proxy), facing ImagePullBackOff error.

🦢 Reproduction steps

Steps to reproduce the behavior:

  1. Add helm repo - helm repo add webgrid https://webgrid.dev/
  2. Install helm repo - helm install example webgrid/webgrid

🎯 Expected behaviour

Images should be downloaded

πŸ“Ί Screenshots

Failed to pull image "webgrid/api": rpc error: code = Unknown desc = Error response from daemon: manifest for webgrid/api:latest not found: manifest unknown: manifest unknown

image


Context

Version
On which version of WebGrid was the bug present?

Where did the problem occur?
List the platform on which you encountered the issue.

  • ☸️ Kubernetes - Minikube

Additional context
Do I have to change any versions in helm chart ?

Hi! Thanks for reporting the issue.

It looks like K8s is trying to pull the images with the "latest" tag. For a multitude of reasons, WebGrid does not publish a latest version. Regardless, the helm chart should use whichever version it was built against!

As a temporary workaround you may set the following Helm value:

image.tag="v0.5.1-beta"

I'll not have time this week to further investigate but feel free to report back in case it works (or breaks) πŸ™‚

Hi @TilBlechschmidt , Thanks for the quick reply. Your solution worked. Do you want me to close this ticket ? Or leave it open so that you can fix it later ?

Just leave it open for now so I can investigate the root cause next week

I've had some time to figure out what was going on. It turns out, when you do not provide Helm with a version number, it picks one from the list of available versions. For some weird reason, the version ordering algorithm decided that one of the older versions of the chart released months ago was "the most recent". Probably due to the fact that those old charts used a different naming scheme (they did not have the -beta suffix).

To remedy the issue, I have removed said old charts from the repository in commit cebb9ef. Additionally, this enforces users to specify a version for the Helm chart until v1.0.0 is released which I consider a good thing (according to SemVer, pre-1.0.0 version numbers may include breaking changes in minor version bumps for obvious reasons, so it makes sense to force users to consciously upgrade).


TL;DR To future users: Specify --version {some-version} when installing the chart! I'll add it to the docs soon.