Closed clux closed 1 month ago
i am experimenting with a self-hosted renovate now. i have a fairly access constrained member account @sszynrae in here with the minimal pat hooked up, so hopefully it'll do something when there's a new kubernetes release.
it's meant to create PRs to bump this line
https://github.com/kube-rs/k8s-pb/blob/main/justfile#L1-L2
and then run the codegen steps afterwards.
Played around a with this today.. It's basically almost working. I have an install script similar to this (but running on my own k3s) that adds the runtime dependencies, i can run 3/4 steps to generate the output (as can be seen in #43), but don't have a good way to cargo fmt
the output atm because the renovate image does not contain rustup/rustfmt nor any good way to install it without sudo
in the image (as is it setup). I also cannot run cargo fmt after (because that's after the PR has been raised) :upside_down_face:
maybe i need to force sudo in the CronJob
template and hack the chart instead to get rustup/rustfmt in there.
..or maybe i do a rustfmt pr job against the renovate job and merge rustfmt -> renovate -> main :upside_down_face:
Got it working. Sideloading a rustup install (via the rustup shell script) with rustfmt (despite rustc / cargo already existing) so we can get it installed. Feels inefficient, and takes 10s to run, but it's automated.. Maybe later renovate will support formatters better.
Made it better. Renovate job now runs it's own image now with all the deps installed running this cronjob setup on my homelab. For improvements, please redirect therein.
Can add an annotation in the
justfile
above line 1: https://github.com/kube-rs/k8s-pb/blob/main/justfile#L1this can tell renovatebot where to get updates and post a PR with the changed version number when it's changed.
you can also use postUpdateTasks to run the the codegen steps and submit a PR.
more in depth article showcasing the basics: https://jamiemagee.co.uk/blog/maintaining-aur-packages-with-renovate/
Main Problem: Which Renovate
practically this is not hard. as long as https://github.com/renovatebot/renovate can run up against the repo, adding a config and the regex managers for it is not super difficult.
however, not sure if CNCF hosts renovate, or if there's a good free way for "orgs". would not like to buy into mend's stuff since they seem very profit focused and only have stupid prices for companies of 100 devs and no mention of open source afaikt (maybe i skimmed too quickly though).