Page MenuHomePhabricator

CI image with openjdk-11-jre-headless fails to build
Closed, ResolvedPublic

Description

Trying to build the CI image for Gerrit due to openjdk 11:

update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/lib/jexec to provide /usr/bin/jexec (jexec) in auto mode
update-alternatives: error: error creating symbolic link '/usr/share/binfmts/jar.dpkg-tmp': No such file or directory

More log:

Setting up openjdk-8-jre-headless:amd64 (8u402-ga-2~deb10u1) ... (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/rmid to provide /usr/bin/rmid (rmid) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java to provide /usr/bin/java (java) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/keytool to provide /usr/bin/keytool (keytool) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/jjs to provide /usr/bin/jjs (jjs) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/pack200 to provide /usr/bin/pack200 (pack200) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/rmiregistry to provide /usr/bin/rmiregistry (rmiregistry) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/unpack200 to provide /usr/bin/unpack200 (unpack200) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/orbd to provide /usr/bin/orbd (orbd) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/servertool to provide /usr/bin/servertool (servertool) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/tnameserv to provide /usr/bin/tnameserv (tnameserv) in auto mode (image.py:210)
Setting up openjdk-11-jre-headless:amd64 (11.0.23+9-1~deb10u1) ... (image.py:210)
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/java to provide /usr/bin/java (java) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/jjs to provide /usr/bin/jjs (jjs) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/keytool to provide /usr/bin/keytool (keytool) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/rmid to provide /usr/bin/rmid (rmid) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/rmiregistry to provide /usr/bin/rmiregistry (rmiregistry) in auto mode (image.py:210) 
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/pack200 to provide /usr/bin/pack200 (pack200) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/unpack200 to provide /usr/bin/unpack200 (unpack200) in auto mode (image.py:210)
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/lib/jexec to provide /usr/bin/jexec (jexec) in auto mode
update-alternatives: error: error creating symbolic link '/usr/share/binfmts/jar.dpkg-tmp': No such file or directory (image.py:210)
dpkg: error processing package openjdk-11-jre-headless:amd64 (--configure):
ost-installation script subprocess returned error exit status 2 (image.py:210)
dpkg: dependency problems prevent configuration of openjdk-11-jdk-headless:amd64:
 openjdk-11-jdk-headless:amd64 depends on openjdk-11-jre-headless (= 11.0.23+9-1~deb10u1); however:
  Package openjdk-11-jre-headless:amd64 is not configured yet.

dpkg: error processing package openjdk-11-jdk-headless:amd64 (--configure):
 dependency problems - leaving unconfigured (image.py:210)
Errors were encountered while processing:
 openjdk-11-jre-headless:amd64
 openjdk-11-jdk-headless:amd64 (image.py:210)

Event Timeline

The image definition is at https://gerrit.wikimedia.org/g/integration/config/+/refs/heads/master/dockerfiles/gerrit/Dockerfile.template and it is based on Buster with:

deb http://apt.wikimedia.org/wikimedia buster-wikimedia component/jdk8

And apt install openjdk-8-jdk-headless openjdk-11-jdk-headless.

Rather than debugging it, I guess it is easier to migrate Bullseye which we have to do anyway.

Change #1023871 had a related patch set uploaded (by Hashar; author: Hashar):

[integration/config@master] jjb: comment about gerrit Docker image failing to build

https://gerrit.wikimedia.org/r/1023871

Change #1023871 merged by jenkins-bot:

[integration/config@master] jjb: comment about gerrit Docker image failing to build

https://gerrit.wikimedia.org/r/1023871

Change #1023881 had a related patch set uploaded (by Hashar; author: Hashar):

[integration/config@master] dockerfiles: update bazelisk/gerrit to Bullseye, drop java 8

https://gerrit.wikimedia.org/r/1023881

Change #1023881 merged by jenkins-bot:

[integration/config@master] dockerfiles: update bazelisk/gerrit to Bullseye, drop java 8

https://gerrit.wikimedia.org/r/1023881

Change #1024416 had a related patch set uploaded (by Hashar; author: Hashar):

[integration/config@master] jjb: switch Gerrit jobs to Bullseye

https://gerrit.wikimedia.org/r/1024416

Change #1024416 merged by jenkins-bot:

[integration/config@master] jjb: switch Gerrit jobs to Bullseye

https://gerrit.wikimedia.org/r/1024416

Leaving it open since the java11 and maven images certainly suffer from the same issue and should also be switched to Bullseye.

hashar claimed this task.

I have built the`java11` and maven images locally using docker-pkg and they both worked. I have no idea what might have happened with the other image though but I am happy to ignore.

The java11 and maven images will be moved to Bullseye eventually which is probably better tracked via the epic task T335765