Build:
  1. 0
2026-01-10 02:45.22: New job: Build Dockerfile using linux-x86_64 in
                                [https://github.com/ocaml-opam/opam2web.git#refs/heads/fix-213 (56e10d809930f9e088f7e4f6148d86098a9873ad)]
2026-01-10 02:45.22: Using cache hint "https://github.com/ocaml-opam/opam2web.git-Dockerfile"
2026-01-10 02:45.22: Waiting for resource in pool OCluster
2026-01-10 02:45.22: Waiting for worker…
2026-01-10 02:45.22: Got resource from pool OCluster
Building on laodoke.caelum.ci.dev
All commits already cached
Submodule path 'content/doc': checked out '13a77b2bc576763bfa469ca3ef6f139402b7357b'
HEAD is now at 56e10d8 Use the 2.1 branch as source of the documentation
Synchronising submodule url for 'content/doc'
Cleared directory 'content/doc'
Submodule 'content/doc' (https://github.com/ocaml/opam.wiki.git) unregistered for path 'content/doc'
Submodule 'content/doc' (https://github.com/ocaml/opam.wiki.git) registered for path 'content/doc'
Submodule path 'content/doc': checked out '13a77b2bc576763bfa469ca3ef6f139402b7357b'
#0 building with "default" instance using docker driver

#1 [internal] load build definition from Dockerfile
#1 transferring dockerfile: 2.48kB done
#1 DONE 0.0s

#2 resolve image config for docker-image://docker.io/docker/dockerfile:1
#2 DONE 0.6s

#3 docker-image://docker.io/docker/dockerfile:1@sha256:b6afd42430b15f2d2a4c5a02b919e98a525b785b1aaff16747d2f623364e39b6
#3 resolve docker.io/docker/dockerfile:1@sha256:b6afd42430b15f2d2a4c5a02b919e98a525b785b1aaff16747d2f623364e39b6 0.0s done
#3 sha256:b6afd42430b15f2d2a4c5a02b919e98a525b785b1aaff16747d2f623364e39b6 8.40kB / 8.40kB done
#3 sha256:62b0eac4b38b65f257ba2525a1bc87978b5e339d6133b5daef1bde40fe7aa10f 850B / 850B done
#3 sha256:6742480c08d7878bbb82a5f5b55d7cb17c5dea60d2068cb2bd37994f3a5c680e 1.33kB / 1.33kB done
#3 sha256:77246a01651da592b7bae79e0e20ed3b4f2e4c00a1b54b7c921c91ae3fa9ef07 0B / 13.57MB 0.1s
#3 sha256:77246a01651da592b7bae79e0e20ed3b4f2e4c00a1b54b7c921c91ae3fa9ef07 3.15MB / 13.57MB 0.3s
#3 sha256:77246a01651da592b7bae79e0e20ed3b4f2e4c00a1b54b7c921c91ae3fa9ef07 7.34MB / 13.57MB 0.5s
#3 sha256:77246a01651da592b7bae79e0e20ed3b4f2e4c00a1b54b7c921c91ae3fa9ef07 8.39MB / 13.57MB 0.6s
#3 sha256:77246a01651da592b7bae79e0e20ed3b4f2e4c00a1b54b7c921c91ae3fa9ef07 11.53MB / 13.57MB 0.7s
#3 sha256:77246a01651da592b7bae79e0e20ed3b4f2e4c00a1b54b7c921c91ae3fa9ef07 13.57MB / 13.57MB 0.8s done
#3 extracting sha256:77246a01651da592b7bae79e0e20ed3b4f2e4c00a1b54b7c921c91ae3fa9ef07 0.1s
#3 extracting sha256:77246a01651da592b7bae79e0e20ed3b4f2e4c00a1b54b7c921c91ae3fa9ef07 0.7s done
#3 DONE 1.6s

#4 [internal] load metadata for docker.io/ocaml/opam:alpine-3.14-ocaml-4.10
#4 DONE 0.8s

#5 [internal] load metadata for docker.io/library/alpine:3.14
#5 DONE 1.4s

#6 [internal] load .dockerignore
#6 transferring context:
#6 transferring context: 2B done
#6 DONE 0.1s

#7 [internal] load build context
#7 transferring context: 2.59kB done
#7 DONE 0.0s

#8 [opam2web 1/6] FROM docker.io/library/alpine:3.14@sha256:0f2d5c38dd7a4f4f733e688e3a6733cb5ab1ac6e3cb4603a5dd564e5bfb80eed
#8 resolve docker.io/library/alpine:3.14@sha256:0f2d5c38dd7a4f4f733e688e3a6733cb5ab1ac6e3cb4603a5dd564e5bfb80eed 0.0s done
#8 sha256:0f2d5c38dd7a4f4f733e688e3a6733cb5ab1ac6e3cb4603a5dd564e5bfb80eed 1.64kB / 1.64kB done
#8 sha256:71859b0c62df47efaeae4f93698b56a8dddafbf041778fd668bbd1ab45a864f8 528B / 528B done
#8 sha256:9e179bacf43c4d3428d57cf459799ba0285b901945f9eccb17b6da056d3532c7 1.47kB / 1.47kB done
#8 ...

#9 [build-opam-doc  1/14] FROM docker.io/ocaml/opam:alpine-3.14-ocaml-4.10@sha256:cac160603d123f71e9109c5de9ad1ff8eeda4c75be369ca27c3eb745dd0f4707
#9 resolve docker.io/ocaml/opam:alpine-3.14-ocaml-4.10@sha256:cac160603d123f71e9109c5de9ad1ff8eeda4c75be369ca27c3eb745dd0f4707 0.0s done
#9 sha256:cac160603d123f71e9109c5de9ad1ff8eeda4c75be369ca27c3eb745dd0f4707 770B / 770B done
#9 sha256:52010d16eddf503f8fec6c152f2d78773cbc8fc3cd9be6579b5156ac6a3614c3 530B / 530B done
#9 sha256:f0d8413b1655f12d11dec98b49b795bec30a6c379f0163c68a2c6ef1186453fb 8.99kB / 8.99kB done
#9 ...

#8 [opam2web 1/6] FROM docker.io/library/alpine:3.14@sha256:0f2d5c38dd7a4f4f733e688e3a6733cb5ab1ac6e3cb4603a5dd564e5bfb80eed
#8 sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 0B / 2.83MB 48.8s
#8 sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 1.05MB / 2.83MB 49.7s
#8 sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 2.10MB / 2.83MB 49.8s
#8 sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 2.83MB / 2.83MB 49.9s done
#8 extracting sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8
#8 extracting sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 0.3s done
#8 DONE 50.3s

#9 [build-opam-doc  1/14] FROM docker.io/ocaml/opam:alpine-3.14-ocaml-4.10@sha256:cac160603d123f71e9109c5de9ad1ff8eeda4c75be369ca27c3eb745dd0f4707
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 0B / 443.08MB 50.2s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 24.12MB / 443.08MB 52.5s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 47.19MB / 443.08MB 54.0s
#9 ...

#10 [opam2web 2/6] RUN apk add git curl rsync libstdc++
#10 0.204 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/main/x86_64/APKINDEX.tar.gz
#10 0.790 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/community/x86_64/APKINDEX.tar.gz
#10 1.832 (1/14) Installing ca-certificates (20230506-r0)
#10 1.894 (2/14) Installing brotli-libs (1.0.9-r5)
#10 2.048 (3/14) Installing nghttp2-libs (1.43.0-r0)
#10 2.128 (4/14) Installing libcurl (8.0.1-r0)
#10 2.249 (5/14) Installing curl (8.0.1-r0)
#10 2.360 (6/14) Installing expat (2.5.0-r0)
#10 2.412 (7/14) Installing pcre2 (10.36-r1)
#10 2.446 (8/14) Installing git (2.32.7-r0)
#10 2.841 (9/14) Installing libgcc (10.3.1_git20210424-r2)
#10 2.914 (10/14) Installing libstdc++ (10.3.1_git20210424-r2)
#10 3.043 (11/14) Installing libacl (2.2.53-r0)
#10 3.050 (12/14) Installing popt (1.18-r0)
#10 3.058 (13/14) Installing zstd-libs (1.4.9-r1)
#10 3.088 (14/14) Installing rsync (3.2.5-r0)
#10 3.114 Executing busybox-1.33.1-r8.trigger
#10 3.125 Executing ca-certificates-20230506-r0.trigger
#10 3.179 OK: 23 MiB in 28 packages
#10 DONE 4.2s

#9 [build-opam-doc  1/14] FROM docker.io/ocaml/opam:alpine-3.14-ocaml-4.10@sha256:cac160603d123f71e9109c5de9ad1ff8eeda4c75be369ca27c3eb745dd0f4707
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 71.30MB / 443.08MB 55.1s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 95.42MB / 443.08MB 56.8s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 118.49MB / 443.08MB 58.9s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 141.56MB / 443.08MB 60.9s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 164.63MB / 443.08MB 62.4s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 187.70MB / 443.08MB 64.3s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 213.91MB / 443.08MB 65.4s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 240.12MB / 443.08MB 66.5s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 263.19MB / 443.08MB 67.6s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 286.26MB / 443.08MB 68.8s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 312.48MB / 443.08MB 69.9s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 335.54MB / 443.08MB 71.0s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 359.66MB / 443.08MB 72.4s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 382.94MB / 443.08MB 74.1s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 405.80MB / 443.08MB 77.0s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 428.87MB / 443.08MB 79.4s
#9 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 443.08MB / 443.08MB 82.8s done
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 5.0s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 10.1s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 15.1s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 20.4s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 26.6s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 32.6s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 38.2s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 44.3s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 49.4s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 54.4s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 65.4s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 71.5s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 77.5s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 84.0s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 89.0s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 94.0s
#9 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 94.5s done
#9 DONE 181.6s

#11 [build-opam-doc  2/14] RUN sudo apk add cgit groff
#11 0.313 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/main/x86_64/APKINDEX.tar.gz
#11 1.034 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/community/x86_64/APKINDEX.tar.gz
#11 2.133 fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
#11 2.453 fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
#11 ...

#12 [build-opam2web  2/13] RUN sudo apk add g++
#12 0.310 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/main/x86_64/APKINDEX.tar.gz
#12 0.908 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/community/x86_64/APKINDEX.tar.gz
#12 1.634 fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
#12 1.908 fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
#12 2.597 fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
#12 3.545 OK: 229 MiB in 79 packages
#12 DONE 3.8s

#11 [build-opam-doc  2/14] RUN sudo apk add cgit groff
#11 3.754 fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
#11 ...

#13 [build-opam2web  3/13] RUN git clone https://github.com/ocaml/opam2web --depth 1 /home/opam/opam2web
#13 0.233 Cloning into '/home/opam/opam2web'...
#13 DONE 0.8s

#14 [build-opam2web  4/13] WORKDIR /home/opam/opam2web
#14 DONE 0.0s

#11 [build-opam-doc  2/14] RUN sudo apk add cgit groff
#11 4.701 (1/3) Installing lua5.3-libs (5.3.6-r0)
#11 4.765 (2/3) Installing cgit (1.2.3-r0)
#11 ...

#15 [build-opam2web  5/13] RUN sudo mkdir -p /opt/opam2web && sudo chown opam:opam /opt/opam2web
#15 DONE 0.3s

#16 [build-opam2web  6/13] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam
#16 DONE 0.4s

#11 [build-opam-doc  2/14] RUN sudo apk add cgit groff
#11 5.392 (3/3) Installing groff (1.22.4-r1)
#11 5.992 Executing busybox-1.33.1-r8.trigger
#11 6.009 OK: 240 MiB in 82 packages
#11 DONE 6.3s

#17 [build-opam2web  7/13] RUN opam repo set-url default https://opam-dev.ocaml.org/
#17 ...

#18 [build-opam-doc  3/14] RUN sudo mkdir -p /usr/local/bin     && echo -e '#!/bin/sh -e\n                echo\n                echo\n                echo "<!DOCTYPE html>"\n                echo "<HTML><HEAD><TITLE>$(basename $2 .1) manpage</TITLE></HEAD><BODY>"\n                /usr/lib/cgit/filters/html-converters/man2html <$2\n                echo "</BODY></HTML>\n'        | sudo tee /usr/local/bin/man2html     && sudo chmod a+x /usr/local/bin/man2html
#18 0.251 #!/bin/sh -e
#18 0.251                 echo
#18 0.251                 echo
#18 0.251                 echo "<!DOCTYPE html>"
#18 0.251                 echo "<HTML><HEAD><TITLE>$(basename $2 .1) manpage</TITLE></HEAD><BODY>"
#18 0.251                 /usr/lib/cgit/filters/html-converters/man2html <$2
#18 0.251                 echo "</BODY></HTML>
#18 0.251 
#18 DONE 0.3s

#19 [build-opam-doc  4/14] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam && opam update
#19 0.391 This version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.1, which can't be reverted.
#19 0.391 You may want to back it up before going further.
#19 0.391 
#19 0.391 Continue? [Y/n] y
#19 0.393 Format upgrade done.
#19 9.939 
#19 9.939 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
#19 ...

#17 [build-opam2web  7/13] RUN opam repo set-url default https://opam-dev.ocaml.org/
#17 57.70 [ERROR] Could not update repository "default": OpamDownload.Download_fail(_, "Curl failed: \"/usr/bin/curl --write-out %{http_code}\\\\n --retry 3 --retry-delay 2 --user-agent opam/2.1.3 -L -o /tmp/opam-1-ad1858/index.tar.gz.part -- https://opam-dev.ocaml.org/index.tar.gz\" exited with code 7")
#17 DONE 63.5s

#19 [build-opam-doc  4/14] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam && opam update
#19 ...

#20 [build-opam2web  8/13] RUN opam install . --destdir /opt/opam2web
#20 1.437 Package opam2web does not exist, create as a NEW package? [Y/n] y
#20 1.646 opam2web is now pinned to git+file:///home/opam/opam2web#master (version ~dev)
#20 1.649 [ERROR] Package conflict!
#20 1.649   * Missing dependency:
#20 1.649     - ocaml >= 4.13.0
#20 1.649     no matching version
#20 1.649 
#20 1.649 No solution found, exiting
#20 ERROR: process "/bin/sh -c opam install . --destdir /opt/opam2web" did not complete successfully: exit code: 20

#19 [build-opam-doc  4/14] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam && opam update
#19 CANCELED
------
 > [build-opam2web  8/13] RUN opam install . --destdir /opt/opam2web:
1.437 Package opam2web does not exist, create as a NEW package? [Y/n] y
1.646 opam2web is now pinned to git+file:///home/opam/opam2web#master (version ~dev)
1.649 [ERROR] Package conflict!
1.649   * Missing dependency:
1.649     - ocaml >= 4.13.0
1.649     no matching version
1.649 
1.649 No solution found, exiting
------

 4 warnings found (use --debug to expand):
 - FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 2)
 - FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 20)
 - FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 43)
 - LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format (line 6)
Dockerfile:10
--------------------
   8 |     RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam
   9 |     RUN opam repo set-url default https://opam-dev.ocaml.org/
  10 | >>> RUN opam install . --destdir /opt/opam2web
  11 |     RUN cp -r content /opt/opam2web/share/opam2web/
  12 |     RUN rm -rf /opt/opam2web/share/opam2web/lib
--------------------
ERROR: failed to solve: process "/bin/sh -c opam install . --destdir /opt/opam2web" did not complete successfully: exit code: 20
docker-build failed with exit-code 1
2026-01-10 02:49.49: Job failed: Failed: Build failed