Add a JSON file listing the images with beta/stable/EOL dates #9484
HonkingGoose
started this conversation in
Ideas
Replies: 1 comment
-
Hi @mikhailkoliada 👋 I think you are a maintainer of the If the team needs more time to think about this before responding, that's also fine. Just let me know that I need to wait a bit. I hope this slight nudge is okay, if not please tell me to shut up and wait. 😉 With regards, HonkingGoose |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi 👋
Summary / TLDR: Add a JSON file that lists each runner-image with beta/stable/EOL dates, to help tools like Renovate pull in the correct information.
Intro
I recently added information that Renovate (a bot that updates dependencies) needs to propose updates to users that use old runner-images:
In essence, I'm copy/pasting information from the Markdown table into Renovate's code.
Manual code changes based on the
runner-images
Markdown tableRight now the Renovate maintainers (or me) need to change the Renovate code to add the beta/stable/EOL images. This is because we do not have a stable format for Renovate to pull in the information. We can't rely on the Markdown table in your readme, because that table can change in any way.
Proposed change
It would help us a lot if we had a file in JSON, that lists the runner-images, with dates for beta, stable and End of Life (EOL). Here's how Node.js lists their Node versions:
Select/click me to see Node.js JSON file
GitHub source file for Node.js supported versions
Automated PR from Renovate to update after upstream source changes
Here's an example of how we use Renovate to update our own data files, based on upstream changes:
We could do the same for the
runner-images
if we had a similar JSON file.Relevant issues and PRs from Renovate, about manual work
Here are the relevant issues/discussions/PRs related to the manual work of update the runner-images:
datasource/github-runners
when out of beta renovatebot/renovate#27228Discussion
I know maintaining anything is hard work, so I do not want to pressure you into anything. That said, I would be very happy if you had a JSON file. I've listed some pros/cons on both sides.
Pros for Renovate
We can automate the work of updating the
runner-images
. We always show our users the correct information, and can propose updates once a runner is stable. We know the source of truth is in a known format.Pros for
runner-images
A source of truth allows you to use tools like Renovate to update your own stuff reliably too. And formalizing the information allows you to visualize changes over time in a single file.
There's a known good format for Renovate already (like the Node.js JSON file) that you can copy/paste and adjust.
Cons for
runner-images
You would need to maintain a extra file in the repository, and make sure the JSON file gets updated at the same time as the release (beta/stable/EOL) of a new
runner-image
. And it takes some time to create the first file.Beta Was this translation helpful? Give feedback.
All reactions