Build:
- 0
2026-03-21 18:46.40: New job: Build Dockerfile using linux-x86_64 in
[https://github.com/ocaml-opam/opam2web.git#refs/heads/fix-213 (56e10d809930f9e088f7e4f6148d86098a9873ad)]
2026-03-21 18:46.40: Using cache hint "https://github.com/ocaml-opam/opam2web.git-Dockerfile"
2026-03-21 18:46.40: Waiting for resource in pool OCluster
2026-03-21 18:46.40: Waiting for worker…
2026-03-21 18:49.47: Got resource from pool OCluster
Building on doris.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
Synchronizing 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.1s
#2 resolve image config for docker-image://docker.io/docker/dockerfile:1
#2 DONE 1.2s
#3 docker-image://docker.io/docker/dockerfile:1@sha256:4a43a54dd1fedceb30ba47e76cfcf2b47304f4161c0caeac2db1c61804ea3c91
#3 resolve docker.io/docker/dockerfile:1@sha256:4a43a54dd1fedceb30ba47e76cfcf2b47304f4161c0caeac2db1c61804ea3c91 0.0s done
#3 sha256:0c0d553f78ac22c7a86406e049cd10406afae98de1e1c681d4ef065cf948dd2f 1.33kB / 1.33kB done
#3 sha256:4a43a54dd1fedceb30ba47e76cfcf2b47304f4161c0caeac2db1c61804ea3c91 8.43kB / 8.43kB done
#3 sha256:a7f5ec8c4a35a7f8cd9e6e413f59fd1bfd33f8b623c26981c684f5065dfe3044 1.13kB / 1.13kB done
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 0B / 13.78MB 586.4s
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 1.05MB / 13.78MB 588.1s
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 2.10MB / 13.78MB 588.3s
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 3.15MB / 13.78MB 588.5s
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 4.19MB / 13.78MB 588.6s
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 6.29MB / 13.78MB 588.8s
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 9.44MB / 13.78MB 589.0s
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 12.58MB / 13.78MB 589.2s
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 13.63MB / 13.78MB 589.3s
#3 sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 13.78MB / 13.78MB 589.5s done
#3 extracting sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 0.1s
#3 extracting sha256:149b48b83eff3cc6314b54f2ab6cdb58908e9c43c36a8ae81d8bb55fbc3281f9 2.5s done
#3 DONE 592.2s
#4 [internal] load metadata for docker.io/library/alpine:3.14
#4 ...
#5 [internal] load metadata for docker.io/ocaml/opam:alpine-3.14-ocaml-4.10
#5 DONE 0.9s
#4 [internal] load metadata for docker.io/library/alpine:3.14
#4 DONE 1.5s
#6 [internal] load .dockerignore
#6 transferring context: 2B done
#6 DONE 0.1s
#7 [internal] load build context
#7 transferring context: 2.59kB done
#7 DONE 0.1s
#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:9e179bacf43c4d3428d57cf459799ba0285b901945f9eccb17b6da056d3532c7 1.47kB / 1.47kB done
#8 sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 0B / 2.83MB 0.1s
#8 sha256:0f2d5c38dd7a4f4f733e688e3a6733cb5ab1ac6e3cb4603a5dd564e5bfb80eed 1.64kB / 1.64kB done
#8 sha256:71859b0c62df47efaeae4f93698b56a8dddafbf041778fd668bbd1ab45a864f8 528B / 528B done
#8 sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 1.05MB / 2.83MB 1.4s
#8 sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 2.10MB / 2.83MB 1.9s
#8 extracting sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8
#8 sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 2.83MB / 2.83MB 2.2s done
#8 extracting sha256:f7dab3ab2d6ec29aa28769bec35331fb485b5837501b1e8556413d8b5a79c9c8 0.3s done
#8 DONE 2.6s
#9 [opam2web 2/6] RUN apk add git curl rsync libstdc++
#9 0.468 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/main/x86_64/APKINDEX.tar.gz
#9 0.641 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/community/x86_64/APKINDEX.tar.gz
#9 0.984 (1/14) Installing ca-certificates (20230506-r0)
#9 1.045 (2/14) Installing brotli-libs (1.0.9-r5)
#9 1.094 (3/14) Installing nghttp2-libs (1.43.0-r0)
#9 1.115 (4/14) Installing libcurl (8.0.1-r0)
#9 1.169 (5/14) Installing curl (8.0.1-r0)
#9 1.200 (6/14) Installing expat (2.5.0-r0)
#9 1.220 (7/14) Installing pcre2 (10.36-r1)
#9 1.256 (8/14) Installing git (2.32.7-r0)
#9 1.700 (9/14) Installing libgcc (10.3.1_git20210424-r2)
#9 1.710 (10/14) Installing libstdc++ (10.3.1_git20210424-r2)
#9 1.763 (11/14) Installing libacl (2.2.53-r0)
#9 1.776 (12/14) Installing popt (1.18-r0)
#9 1.786 (13/14) Installing zstd-libs (1.4.9-r1)
#9 1.835 (14/14) Installing rsync (3.2.5-r0)
#9 1.869 Executing busybox-1.33.1-r8.trigger
#9 1.888 Executing ca-certificates-20230506-r0.trigger
#9 1.981 OK: 23 MiB in 28 packages
#9 DONE 4.3s
#10 [build-opam-doc 1/14] FROM docker.io/ocaml/opam:alpine-3.14-ocaml-4.10@sha256:cac160603d123f71e9109c5de9ad1ff8eeda4c75be369ca27c3eb745dd0f4707
#10 resolve docker.io/ocaml/opam:alpine-3.14-ocaml-4.10@sha256:cac160603d123f71e9109c5de9ad1ff8eeda4c75be369ca27c3eb745dd0f4707 0.0s done
#10 sha256:cac160603d123f71e9109c5de9ad1ff8eeda4c75be369ca27c3eb745dd0f4707 770B / 770B done
#10 sha256:52010d16eddf503f8fec6c152f2d78773cbc8fc3cd9be6579b5156ac6a3614c3 530B / 530B done
#10 sha256:f0d8413b1655f12d11dec98b49b795bec30a6c379f0163c68a2c6ef1186453fb 8.99kB / 8.99kB done
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 84.93MB / 443.08MB 7.1s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 108.00MB / 443.08MB 8.8s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 131.07MB / 443.08MB 12.3s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 157.29MB / 443.08MB 14.5s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 180.36MB / 443.08MB 15.7s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 204.47MB / 443.08MB 17.1s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 226.66MB / 443.08MB 18.1s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 254.80MB / 443.08MB 18.8s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 283.12MB / 443.08MB 19.6s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 307.23MB / 443.08MB 20.2s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 334.50MB / 443.08MB 21.0s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 358.61MB / 443.08MB 22.0s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 382.73MB / 443.08MB 23.6s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 409.99MB / 443.08MB 24.4s
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 435.16MB / 443.08MB 25.1s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3
#10 sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 443.08MB / 443.08MB 26.1s done
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 5.1s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 10.2s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 16.4s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 21.7s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 27.3s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 32.4s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 37.4s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 46.1s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 53.6s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 64.1s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 69.1s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 74.5s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 79.6s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 84.7s
#10 extracting sha256:31e42ffc26010e6972ba08b9bb4a92fa4afe14d6fd67951214d68c076a5e2bd3 84.7s done
#10 DONE 115.4s
#11 [build-opam2web 2/13] RUN sudo apk add g++
#11 0.575 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/main/x86_64/APKINDEX.tar.gz
#11 0.711 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/community/x86_64/APKINDEX.tar.gz
#11 4.259 fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
#11 4.688 fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
#11 5.529 fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
#11 6.390 OK: 229 MiB in 79 packages
#11 DONE 7.8s
#12 [build-opam-doc 2/14] RUN sudo apk add cgit groff
#12 0.517 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/main/x86_64/APKINDEX.tar.gz
#12 0.658 fetch https://dl-cdn.alpinelinux.org/alpine/v3.14/community/x86_64/APKINDEX.tar.gz
#12 2.362 fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
#12 4.188 fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
#12 5.387 fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
#12 6.322 (1/3) Installing lua5.3-libs (5.3.6-r0)
#12 6.373 (2/3) Installing cgit (1.2.3-r0)
#12 6.524 (3/3) Installing groff (1.22.4-r1)
#12 7.142 Executing busybox-1.33.1-r8.trigger
#12 7.176 OK: 240 MiB in 82 packages
#12 DONE 7.8s
#13 [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
#13 0.700 #!/bin/sh -e
#13 0.700 echo
#13 0.700 echo
#13 0.700 echo "<!DOCTYPE html>"
#13 0.700 echo "<HTML><HEAD><TITLE>$(basename $2 .1) manpage</TITLE></HEAD><BODY>"
#13 0.700 /usr/lib/cgit/filters/html-converters/man2html <$2
#13 0.700 echo "</BODY></HTML>
#13 0.700
#13 DONE 0.9s
#14 [build-opam2web 3/13] RUN git clone https://github.com/ocaml/opam2web --depth 1 /home/opam/opam2web
#14 0.630 Cloning into '/home/opam/opam2web'...
#14 DONE 4.9s
#15 [build-opam-doc 4/14] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam && opam update
#15 0.498 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.
#15 0.498 You may want to back it up before going further.
#15 0.498
#15 0.499 Continue? [Y/n] y
#15 0.500 Format upgrade done.
#15 ...
#16 [build-opam2web 4/13] WORKDIR /home/opam/opam2web
#16 DONE 0.1s
#17 [build-opam2web 5/13] RUN sudo mkdir -p /opt/opam2web && sudo chown opam:opam /opt/opam2web
#17 DONE 0.6s
#15 [build-opam-doc 4/14] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam && opam update
#15 ...
#18 [build-opam2web 6/13] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam
#18 DONE 0.6s
#15 [build-opam-doc 4/14] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam && opam update
#15 ...
#19 [build-opam2web 7/13] RUN opam repo set-url default https://opam-dev.ocaml.org/
#19 ...
#15 [build-opam-doc 4/14] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam && opam update
#15 10.10
#15 10.10 <><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
#15 ...
#19 [build-opam2web 7/13] RUN opam repo set-url default https://opam-dev.ocaml.org/
#19 74.16 [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-2e1d3e/index.tar.gz.part -- https://opam-dev.ocaml.org/index.tar.gz\" exited with code 7")
#19 DONE 79.5s
#15 [build-opam-doc 4/14] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam && opam update
#15 ...
#20 [build-opam2web 8/13] RUN opam install . --destdir /opt/opam2web
#20 1.792 Package opam2web does not exist, create as a NEW package? [Y/n] y
#20 1.970 opam2web is now pinned to git+file:///home/opam/opam2web#master (version ~dev)
#20 1.971 [ERROR] Package conflict!
#20 1.971 * Missing dependency:
#20 1.971 - ocaml >= 4.13.0
#20 1.971 no matching version
#20 1.971
#20 1.971 No solution found, exiting
#20 ERROR: process "/bin/sh -c opam install . --destdir /opt/opam2web" did not complete successfully: exit code: 20
#15 [build-opam-doc 4/14] RUN sudo mv /usr/bin/opam-2.1 /usr/bin/opam && opam update
#15 CANCELED
------
> [build-opam2web 8/13] RUN opam install . --destdir /opt/opam2web:
1.792 Package opam2web does not exist, create as a NEW package? [Y/n] y
1.970 opam2web is now pinned to git+file:///home/opam/opam2web#master (version ~dev)
1.971 [ERROR] Package conflict!
1.971 * Missing dependency:
1.971 - ocaml >= 4.13.0
1.971 no matching version
1.971
1.971 No solution found, exiting
------
4 warnings found (use docker --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-03-21 19:03.25: Job failed: Failed: Build failed