Re: [PATCH 3/4] ci: use more recent linux32 image
- From
Patrick Steinhardt <ps@pks.im>
- Date
- Sep 12, 2024, 11:53 UTC
- Message-ID
- <ZuLWHBvrT31KVd9W@pks.im>
- In-Reply-To
- <20240912112242.GA622312@coredump.intra.peff.net>
On Thu, Sep 12, 2024 at 07:22:42AM -0400, Jeff King wrote:
Show 48 quoted lines
> On Thu, Sep 12, 2024 at 12:41:03PM +0200, Patrick Steinhardt wrote: > > > On Thu, Sep 12, 2024 at 05:47:30AM -0400, Jeff King wrote: > > > diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml > > > index 97f9b06310..db8e8f75a4 100644 > > > --- a/.github/workflows/main.yml > > > +++ b/.github/workflows/main.yml > > > @@ -339,8 +339,8 @@ jobs: > > > image: alpine > > > distro: alpine-latest > > > - jobname: linux32 > > > - image: daald/ubuntu32:xenial > > > - distro: ubuntu32-16.04 > > > + image: i386/ubuntu:focal > > > + distro: ubuntu32-20.04 > > > - jobname: pedantic > > > image: fedora > > > distro: fedora-latest > > > > We could counteract the loss of testing against Ubuntu 16.04 by adding > > it to GitLab CI instead: > > > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml > > index 2589098eff7..80b1668ebeb 100644 > > --- a/.gitlab-ci.yml > > +++ b/.gitlab-ci.yml > > @@ -25,6 +25,9 @@ test:linux: > > fi > > parallel: > > matrix: > > + - jobname: linux-old > > + image: ubuntu:16.04 > > + CC: gcc > > - jobname: linux-sha256 > > image: ubuntu:latest > > CC: clang > > > > I didn't test it, but it should work alright. GitLab doesn't put any > > additional executables into the container, so it is entirely self > > contained. Let me know in case you think this is a good idea and I'll > > run a CI pipeline against this change. > > That seems like a good thing to do to mitigate the loss. In a perfect > world we'd have all platforms running all the tests, just because it > helps align the work between finding and fixing (i.e., I might introduce > a bug and not even know it is failing, and you have to spend time > reporting it to me). But the world isn't perfect, so finding out about > my bug _eventually_ is OK. :)
For reference, [here] is the merge request. The [first] pipeline failed because Java is too old, as you also mention in one of the preceding commits:
JGit Version
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/eclipse/jgit/pgm/Main has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:151)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:46)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65)I've thus added the following hunk:
diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh
index 735ee6f4639..c85b1f55700 100755
--- a/ci/install-dependencies.sh
+++ b/ci/install-dependencies.sh
@@ -55,6 +55,11 @@ ubuntu-*|ubuntu32-*)
${CC_PACKAGE:-${CC:-gcc}} $PYTHON_PACKAGE case "$distro" in
+ ubuntu-16.04)
+ # Does not support JGit, but we also don't really care about
+ # the others. We rather care whether Git still compiles and
+ # runs fine overall.
+ ;;
ubuntu-*)
mkdir --parents "$CUSTOM_PATH"And with that the [fixed] pipeline builds and executes our tests just fine. I didn't wait for tests to finish though.
Patrick
[here]: https://gitlab.com/gitlab-org/git/-/merge_requests/210 [first]: https://gitlab.com/gitlab-org/git/-/jobs/7808775485 [fixed]: https://gitlab.com/gitlab-org/git/-/jobs/7808836999