Re: [RFH] GitHub deprecates Ubuntu 20.04 Actions runner image
- From
brian m. carlson <sandals@crustytoothpaste.net>
- Date
- Apr 8, 2025, 21:52 UTC
- Message-ID
- <Z_WagT6zeeQGNa0k@tapette.crustytoothpaste.net>
- In-Reply-To
- <xmqqo6x6wgs8.fsf@gitster.g>
On 2025-04-08 at 20:16:07, Junio C Hamano wrote:
Show 13 quoted lines
> It seems that we are hitting https://github.com/actions/runner-images/issues/11101 > which deliberately breaks CI jobs running on Ubuntu 20.04 images, in preparation > for its removal targetted for Apr 15th, 2025. > > The following is a random/blind attempt, but I need a lot of help ;-). > > [jc: brian and Taylor CC'ed for their ac112fd4 (Add additional CI > jobs to avoid accidental breakage, 2024-10-31)] > > (1) I do not know if the deprecation schedule at GitHub is the same > for native runner images and dockerized ones. Do we want to > leave the linux-TEST-vars that uses image ubuntu:20.04 alone > for now?
Yeah, that's a Docker image and we can leave it. As long as Docker Hub continues to host that image, there's no problem with us using it. I would argue that it's a good idea to use a supported OS, but it's not urgent to fix.
> (2) If we were to update it to ubuntu:22.04, would gcc-8 still be > the right "ancient-ish" version of the compiler, or should we > update it as well?
We should update that as well, since I doubt GCC 8 is still available. I'd normally look at https://packages.ubuntu.com/gcc to see what version is the default but it's down right now.
Show 5 quoted lines
> (3) Linux32 job running on image i386/ubuntu:focal has comments > that says it is supported until 2025-04-02; should we simply > drop that job, as 32-bit platforms are less and less relevant > these days? It is not so urgent but debian-11 job also should > be replaced with something slightly newer next summer.
We could update it to a newer version of Ubuntu, such as i386/ubuntu:jammy. That would probably work fine, although I know Ubuntu was making i386 a more limited distro with fewer packages. Perhaps Debian might be a better choice, then.
Show 24 quoted lines
> (4) I have no idea how the "sparse" job, which seems to download > pre-built sparse using magic incantation > > - name: Download a current `sparse` package > uses: git-for-windows/get-azure-pipelines-artifact@v0 > with: > repository: git/git > definitionId: 10 > artifact: sparse-20.04 > - name: Install the current `sparse` package > run: sudo dpkg -i sparse-20.04/sparse_*.deb > > is supposed to be updated. Should that be coordinated with the > git-for-windows project, where its .github/workflows/test.yml > has a similar insn to build sparse-20.04? > > It appears that Dscho (CC'ed) is futzing with the generation of > sparse package on Ubuntu 20.04 and 22.04 and getting affected > by the same 20.04 brownout > > https://dev.azure.com/git/git/_build/results?buildId=2396&view=results > > so probably I do not have to worry about it and let Dscho take > care of the whole thing?
I think Dscho may find a good solution for this, so we can let him start to look at it.
I apologize that I don't have a lot of time today to look into this, since I have something to do this evening, but if we don't get it sorted out in the next couple of days, I can try to send a patch to fix things.
Show 10 quoted lines
> diff --git c/.github/workflows/main.yml w/.github/workflows/main.yml > index 9959b61ece..1d4422c898 100644 > --- c/.github/workflows/main.yml > +++ w/.github/workflows/main.yml > @@ -372,7 +372,7 @@ jobs: > image: ubuntu:rolling > cc: clang > - jobname: linux-TEST-vars > - image: ubuntu:20.04 > + image: ubuntu:22.04
This doesn't strictly have to change, but because Ubuntu 20.04 is going EOL, we probably should change it. Nothing will break if we don't, though.
Show 9 quoted lines
> cc: gcc > cc_package: gcc-8 > - jobname: linux-breaking-changes > @@ -446,7 +446,7 @@ jobs: > if: needs.ci-config.outputs.enabled == 'yes' > env: > jobname: sparse > - runs-on: ubuntu-20.04 > + runs-on: ubuntu-22.04
This definitely needs to change. Anything that does "runs-on" is a runner type and Ubuntu 20.04 is going away for runners.
Show 12 quoted lines
> concurrency:
> group: sparse-${{ github.ref }}
> cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
> @@ -457,9 +457,9 @@ jobs:
> with:
> repository: git/git
> definitionId: 10
> - artifact: sparse-20.04
> + artifact: sparse-22.04
> - name: Install the current `sparse` package
> - run: sudo dpkg -i sparse-20.04/sparse_*.deb
> + run: sudo dpkg -i sparse-22.04/sparse_*.debI don't know how these are generated, but this seems like a good start to try and we can adjust it later on if there's more moving parts to fix.
-- brian m. carlson (they/them) Toronto, Ontario, CA