helm-whatup icon indicating copy to clipboard operation
helm-whatup copied to clipboard

Work without local repo

Open cwrau opened this issue 4 years ago • 6 comments

Is it possible to check for updates without the need for local repos? We are using Flux's Helm Operator, so we don't need local repos.

It would be awesome if this plugin would check remotely for updates.

cwrau avatar Aug 12 '19 07:08 cwrau

@cwrau we're using the Flux Helm operator too and we currently just make sure that we have the relevant repos configured locally and just run helm repo update && helm whatup. If you wanted something more in-cluster and automated you could roll an image to automatically configure helm based on the cluster repos before running helm repo update && helm whatup. You could then get an outdated report triggered by a cron job.

stevehipwell avatar Oct 24 '19 08:10 stevehipwell

I wrote a small tool heluxup which maybe does what you want: https://github.com/ekeih/heluxup 🤔

It looks at all HelmRelease objects in you flux repo, downloads the index.yaml files for all used repos, checks for new releases and updates your HelmRelease files. It would be possible to extend heluxup to allow limits based on semver, e.g. "only do patch updates". It would also be possible to make automated git commits and pushes, but I did not implement this yet. If you would like such functionalities, feel free to open issues or pull requests: https://github.com/ekeih/heluxup/issues

ekeih avatar Oct 24 '19 08:10 ekeih

@ekeih that looks great!! I think a flag to limit by semver would be a very useful addition.

stevehipwell avatar Oct 24 '19 08:10 stevehipwell

That looks great! Perfect for my usecase!

Still, not having to have the same repos configured could be useful for other people.

cwrau avatar Oct 24 '19 12:10 cwrau

I'm not sure I fully understand the use case. In either case, you'd have to tell helm whatup how to fetch the repository index to determine if there's an update available. heluxup accomplishes the same task. The only difference is that heluxup reads a file in a given directory with a list of repositories to accomplish the same task.

https://github.com/ekeih/heluxup/blob/f8f605161b810497559b1156c2a68c67f7980ddd/heluxup/main.py#L79-L92

How would you imagine this would work?

bacongobbler avatar May 11 '20 22:05 bacongobbler

Looking at https://github.com/helm/helm/issues/4256 I don't think there is a way to figure out the source repos of the installed charts. So I think the answer to the original question Is it possible to check for updates without the need for local repos? is No. With heluxup it only works because with the helm-operator there is a way to store the original chart source repo, but with vanilla helm there isn't.

ekeih avatar May 24 '20 19:05 ekeih