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

ci: multiple ubuntu version #2036

Merged
merged 9 commits into from
Nov 30, 2022
Merged

ci: multiple ubuntu version #2036

merged 9 commits into from
Nov 30, 2022

Conversation

toast-gear
Copy link
Collaborator

@toast-gear toast-gear commented Nov 23, 2022

Depends on #1924 being merged

Notes

  • @mumoshu The only functional change here is removal of the latest tag which is replaced by the OS version -latest e.g. ubuntu-20.04-latest. We should stop using latest with the OS going forward even when we eventually stop producing a 20.04 image (like we did with the 18.04 image) and only have 1 runner image. We'll ultimately have to produce another ubuntu image down the road so we should abandoned using a naked latest tag.

Build produces the below tags:

https://github.com/actions-runner-controller/actions-runner-controller/actions/runs/3553366494/jobs/5968874974

image

I think they all line up with what we do now https://hub.docker.com/r/summerwind/actions-runner/tags

@toast-gear toast-gear marked this pull request as ready for review November 26, 2022 11:02
@@ -77,9 +77,9 @@ jobs:
tags: |
${{ env.DOCKERHUB_USERNAME }}/${{ matrix.name }}:v${{ env.RUNNER_VERSION }}-${{ matrix.os-name }}-${{ matrix.os-version }}
${{ env.DOCKERHUB_USERNAME }}/${{ matrix.name }}:v${{ env.RUNNER_VERSION }}-${{ matrix.os-name }}-${{ matrix.os-version }}-${{ env.sha_short }}
${{ env.DOCKERHUB_USERNAME }}/${{ matrix.name }}:latest
ghcr.io/${{ github.repository }}/${{ matrix.name }}:latest
${{ env.DOCKERHUB_USERNAME }}/${{ matrix.name }}:${{ matrix.os-name }}-${{ matrix.os-version }}-latest
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
${{ env.DOCKERHUB_USERNAME }}/${{ matrix.name }}:${{ matrix.os-name }}-${{ matrix.os-version }}-latest
${{ env.DOCKERHUB_USERNAME }}/${{ matrix.name }}:${{ matrix.os-name }}-${{ matrix.os-version }}

This looks geat overall! Thanks for your efforts. One suggestion for this though- Can we omit the "-latest" suffix for this variant? I think we are basically omitting that suffix also on the existing v${{ env.RUNNER_VERSION }}-${{ matrix.os-name }}-${{ matrix.os-version }} image.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We are that's true. Now you've pointed it out it's a bit annoying but I think we probably should stick with not having it for backwards compatibility reasons.

@@ -77,9 +77,9 @@ jobs:
tags: |
${{ env.DOCKERHUB_USERNAME }}/${{ matrix.name }}:v${{ env.RUNNER_VERSION }}-${{ matrix.os-name }}-${{ matrix.os-version }}
${{ env.DOCKERHUB_USERNAME }}/${{ matrix.name }}:v${{ env.RUNNER_VERSION }}-${{ matrix.os-name }}-${{ matrix.os-version }}-${{ env.sha_short }}
${{ env.DOCKERHUB_USERNAME }}/${{ matrix.name }}:latest
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe it's not easy, but can we add another pipeline to keep publishing latest, that points to the latest ubuntu 20.04 image for a while and will eventually get updated to 22.04 in the near future?

Without that another pipeline, we end up immediately stopping updates to the latest image, which many folks seem to be using today, and those folks would end up seeing a lot of runner auto updates triggered before their runners within runner pods get up and running, which will trigger a storm of questions and bug reports...

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will eventually get updated to 22.04 in the near future?

Or maybe we can deprecate the latest tag soon and stop updating it e.g. 1 month before we stop publishing legacy 20.04 images.
The result might be the same. I think stopping updates on the latest tag immediately can be a source of confusion and breakage though.

Copy link
Collaborator Author

@toast-gear toast-gear Nov 29, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Having had a think I agree with all this. I think we should deprecate the latest tag entirely but yeh, we probably should do it after 22.04 has been out for some time.

Perhaps we can update the startup.sh to spit out some warnings too and pin an issue to give people the best chance of seeing it before we stop updating it? Should we look to delete the latest tag from DockerHub entirely too as it'll be very misleading if the tag left hanging around once we have stopped using it.

Copy link
Collaborator

@mumoshu mumoshu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thank you so much for your contribution as always!

@mumoshu mumoshu merged commit 63d2cbf into master Nov 30, 2022
@mumoshu mumoshu deleted the ci/multiple-ubuntu-version branch November 30, 2022 15:00
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

Successfully merging this pull request may close these issues.

2 participants