Message ID | xmqqo6x6wgs8.fsf@gitster.g (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [RFH] GitHub deprecates Ubuntu 20.04 Actions runner image | expand |
On 2025-04-08 at 20:16:07, Junio C Hamano wrote: > 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. > (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. > (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. > 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. > 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. > 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_*.deb I 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" <sandals@crustytoothpaste.net> writes: >> 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? > ... >> @@ -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_*.deb > > I 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. I think mails crossed among three of us. <77f82414-261c-d2bc-f911-ed3d4b06c86e@gmx.de>
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 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 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_*.deb - uses: actions/checkout@v4 - name: Install other dependencies run: ci/install-dependencies.sh