Build:
- 0
2026-03-30 16:25.32: New job: Build Dockerfile using linux-x86_64 in
[https://github.com/mirage/mirage-www.git#refs/heads/next (d6c251b2dfab5cbbf2123cd2e792661b8ab49fd9)]
2026-03-30 16:25.32: Will push staging image to ocurrentbuilder/staging:live-mirage-xen
2026-03-30 16:25.32: Using cache hint "mirage-www-xen"
2026-03-30 16:25.32: Waiting for confirm-threshold > above-average
2026-03-30 16:26.44: Confirm-threshold now > above-average
2026-03-30 16:26.44: Connecting to build cluster…
2026-03-30 16:26.44: Waiting for resource in pool OCluster
2026-03-30 16:26.44: Waiting for worker…
2026-03-30 16:26.44: Got resource from pool OCluster
Building on bremusa.ocamllabs.io
All commits already cached
HEAD is now at d6c251b Adapt Dockerfile for 5.2 CI
Synchronising submodule url for 'data/wiki/files/mirage-skeleton'
Cleared directory 'data/wiki/files/mirage-skeleton'
Submodule 'data/wiki/files/mirage-skeleton' (https://github.com/mirage/mirage-skeleton) unregistered for path 'data/wiki/files/mirage-skeleton'
Submodule 'data/wiki/files/mirage-skeleton' (https://github.com/mirage/mirage-skeleton) registered for path 'data/wiki/files/mirage-skeleton'
Submodule path 'data/wiki/files/mirage-skeleton': checked out 'ff5febb147ec708ef56d74e9fed9e99743965edd'
#0 building with "default" instance using docker driver
#1 [internal] load build definition from Dockerfile
#1 transferring dockerfile: 1.12kB done
#1 DONE 0.0s
#2 [internal] load metadata for docker.io/ocaml/opam:debian-12-ocaml-5.2
#2 DONE 0.4s
#3 [internal] load .dockerignore
#3 transferring context: 64B done
#3 DONE 0.0s
#4 [ 1/17] FROM docker.io/ocaml/opam:debian-12-ocaml-5.2@sha256:be7d6bf8e4a73c5a312944c1d78942edf5912c6edd7179ab3614a78687091bb5
#4 DONE 0.0s
#5 [internal] load build context
#5 transferring context: 9.69MB 0.2s done
#5 DONE 0.2s
#6 [ 2/17] RUN sudo apt-get update && sudo apt-get install autoconf automake -y --no-install-recommends
#6 CACHED
#7 [ 5/17] RUN sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam
#7 CACHED
#8 [ 6/17] RUN cd ~/opam-repository && git pull origin master && git reset --hard 705cfbfe709bba2533a3cd6164b7dab37fca0342
#8 CACHED
#9 [ 7/17] RUN opam update
#9 CACHED
#10 [ 9/17] COPY --chown=opam:root mirage/config.ml /home/opam/www/mirage/
#10 CACHED
#11 [ 3/17] RUN mkdir -p /home/opam/www/mirage
#11 CACHED
#12 [ 4/17] WORKDIR /home/opam/www
#12 CACHED
#13 [ 8/17] RUN opam install 'mirage>=4.5.0'
#13 CACHED
#14 [10/17] COPY --chown=opam:root mirageio.opam /home/opam/www/
#14 CACHED
#15 [11/17] RUN opam pin add -n ocaml-solo5 'https://github.com/shym/ocaml-solo5.git#ocaml-5.2-reb'
#15 3.300 [ocaml-solo5.0.8.4] synchronised (git+https://github.com/shym/ocaml-solo5.git#ocaml-5.2-reb)
#15 3.304 ocaml-solo5 is now pinned to git+https://github.com/shym/ocaml-solo5.git#ocaml-5.2-reb (version 0.8.4)
#15 DONE 3.7s
#16 [12/17] RUN opam exec -- mirage configure -f mirage/config.ml -t xen --tls=true --separate-networks
#16 DONE 1.6s
#17 [13/17] RUN opam exec -- make depend
#17 0.246 using overlay repository mirage: [opam-overlays, mirage-overlays]
#17 1.441 [opam-overlays] Initialised
#17 2.697 [NOTE] Repository opam-overlays has been added to the selections of switch 5.2 only.
#17 2.697 Run `opam repository add opam-overlays --all-switches|--set-default' to use it in all existing switches, or in newly created switches, respectively.
#17 2.697
#17 3.478 [mirage-overlays] Initialised
#17 4.266 [NOTE] Repository mirage-overlays has been added to the selections of switch 5.2 only.
#17 4.266 Run `opam repository add mirage-overlays --all-switches|--set-default' to use it in all existing switches, or in newly created switches, respectively.
#17 4.266
#17 4.282 ↳ generate lockfile for monorepo dependencies
#17 4.309 ==> Using 1 locally scanned package as the target.
#17 48.29 opam-monorepo: [ERROR] Can't find all required versions.
#17 48.29 Selected: angstrom.0.16.0 arp.3.1.1 astring.0.8.5+dune base-bytes.base+dune
#17 48.29 base-threads.base base-unix.base base64.3.5.1 bheap.2.0.0
#17 48.29 bigarray-compat.1.1.0 bigarray-overlap.0.2.1 bigstringaf.0.10.0
#17 48.29 bos.0.2.1+dune camlp-streams.5.0.1 caqti.2.1.1 caqti-lwt.2.1.1
#17 48.29 cmarkit.0.4.0+dune cmdliner.2.1.0+dune conf-gmp.4
#17 48.29 conf-gmp-powm-sec.3 conf-libev.4-12 conf-libssl.4 conf-m4.1
#17 48.29 conf-oniguruma.1 conf-pkg-config.3 cppo.1.6.9 crunch.3.3.1
#17 48.29 csexp.1.5.2 cstruct.6.2.0 cstruct-lwt.6.2.0 ctypes.0.23.0
#17 48.29 digestif.1.2.0 dns.8.0.0 dns-certify.8.0.0 dns-mirage.8.0.0
#17 48.29 dns-tsig.8.0.0 domain-name.0.4.0 dream.dev dream-httpaf.dev
#17 48.29 dream-mirage.dev dream-pure.dev dune.3.16.0
#17 48.29 dune-configurator.3.16.0 dune-private-libs.3.16.0 dune-site.3.16.0
#17 48.29 duration.0.2.1 dyn.3.16.0 emile.1.1 ethernet.3.2.0 faraday.0.8.2
#17 48.29 faraday-lwt.0.8.2 faraday-lwt-unix.0.8.2 findlib.1.9.5+dune
#17 48.29 fmt.0.11.0+dune fpath.0.7.3+dune gmap.0.3.0 gmp.6.2.1-5
#17 48.29 graphql.0.14.0 graphql-lwt.0.14.0 graphql_parser.0.14.0
#17 48.29 hilite.0.4.0 hmap.0.8.1+dune integers.0.7.0 io-page.3.0.0
#17 48.29 ipaddr.5.6.0 ipaddr-cstruct.5.6.0 ke.0.6 lambdasoup.1.0.0
#17 48.29 letsencrypt.0.5.1 logs.0.10.0+dune lru.0.3.1 lwt.5.7.0
#17 48.29 lwt-dllist.1.0.1 lwt_ppx.2.1.0+lwt.5.7.0 lwt_ssl.1.2.0
#17 48.29 macaddr.5.6.0 macaddr-cstruct.5.6.0 magic-mime.1.3.1 markup.1.0.3
#17 48.29 menhir.20240715 menhirCST.20240715 menhirLib.20240715
#17 48.29 menhirSdk.20240715 metrics.0.4.1 metrics-lwt.0.4.1 mimic.0.0.9
#17 48.29 mirage-bootvar.1.0.1 mirage-clock.4.2.0 mirage-clock-solo5.4.2.0
#17 48.29 mirage-clock-unix.4.2.0 mirage-crypto-rng-lwt.0.11.3
#17 48.29 mirage-flow.4.0.2 mirage-kv.6.1.1 mirage-kv-mem.3.2.1
#17 48.29 mirage-logs.2.1.0 mirage-net.4.0.0 mirage-net-xen.2.1.5
#17 48.29 mirage-runtime.4.6.1 mirage-time.3.0.0 mirage-unix.5.0.1
#17 48.29 mirage-xen.8.0.3 mirageio.zdev mtime.2.1.0+dune
#17 48.29 multipart_form.0.6.0 multipart_form-lwt.0.6.0
#17 48.29 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-syntax-shims.1.0.0
#17 48.29 ocamlfind.1.9.5+dune ocplib-endian.1.2 oniguruma.0.1.2 optint.0.3.0
#17 48.29 ordering.3.16.0 pbkdf.1.2.0 pecu.0.7 pp.1.2.0 ppx_derivers.1.2.1
#17 48.29 ppx_deriving.6.0.2 ppx_deriving_yaml.0.3.0 ppxlib.0.33.0
#17 48.29 prettym.0.0.3 psq.0.2.1 ptime.1.2.0+dune re.1.11.0 result.1.5
#17 48.29 rresult.0.7.0+dune seq.base+dune sexplib0.v0.17.0
#17 48.29 shared-memory-ring.3.2.1 shared-memory-ring-lwt.3.2.1 ssl.0.7.0
#17 48.29 stdlib-shims.0.3.0 stdune.3.16.0 stringext.1.6.0 tailwindcss.dev
#17 48.29 tcpip.8.2.0 textmate-language.0.4.0 tls-mirage.0.17.5
#17 48.29 uchar.0.0.2+dune2 unstrctrd.0.4 uri.4.4.0 uutf.1.0.3+dune
#17 48.29 www-xen.zdev x509.0.16.5 xenstore.2.3.0 yaml.3.2.0 yojson.2.2.2
#17 48.29 zarith.1.14+dune+mirage ocaml-base-compiler&www-xen
#17 48.29 ocaml-base-compiler ocaml-base-compiler ocaml gmp
#17 48.29 - asn1-combinators -> asn1-combinators.0.2.6
#17 48.29 x509 0.16.5 requires >= 0.2.0 & < 0.3.0
#17 48.29 - eqaf -> eqaf.0.9
#17 48.29 mirage-crypto 0.11.3 requires >= 0.8 & < 0.10
#17 48.29 - hkdf -> hkdf.1.0.4
#17 48.29 tls 0.17.5 requires < 2.0.0
#17 48.29 - mirage-crypto -> mirage-crypto.0.11.3
#17 48.29 dns-tsig 8.0.0 requires < 1.0.0
#17 48.29 - mirage-crypto-ec -> mirage-crypto-ec.0.11.3
#17 48.29 dns-certify 8.0.0 requires < 1.0.0
#17 48.29 - mirage-crypto-pk -> mirage-crypto-pk.0.11.3
#17 48.29 dns-certify 8.0.0 requires >= 0.8.0 & < 1.0.0
#17 48.29 - mirage-crypto-rng -> mirage-crypto-rng.0.11.3
#17 48.29 dns-certify 8.0.0 requires >= 0.8.0 & < 1.0.0
#17 48.29 - mirage-crypto-rng-mirage -> (problem)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.0)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.1)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.2)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.3)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.4)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.5)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.6)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.7)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.8)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.8.10)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.9.0)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.9.1)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.9.2)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.10.0)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.10.1)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.10.2)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.10.3)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.10.4)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.10.5)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.10.6)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.10.7)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.11.0)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.11.1)
#17 48.29 mirage-crypto 0.11.3 requires not(= 0.11.2)
#17 48.29 mirage-crypto 0.11.3 requires not(= 1.0.0)
#17 48.29 mirage-crypto 0.11.3 requires not(= 1.1.0)
#17 48.29 tcpip 8.2.0 requires >= 1.0.0
#17 48.29 Rejected candidates:
#17 48.29 mirage-crypto-rng-mirage.1.1.0: Incompatible with restriction: not(= 1.1.0)
#17 48.29 mirage-crypto-rng-mirage.1.0.0: Incompatible with restriction: not(= 1.0.0)
#17 48.29 mirage-crypto-rng-mirage.0.11.3: Incompatible with restriction: >= 1.0.0
#17 48.29 mirage-crypto-rng-mirage.0.11.2: Incompatible with restriction: not(= 0.11.2)
#17 48.29 mirage-crypto-rng-mirage.0.11.1: Incompatible with restriction: not(= 0.11.1)
#17 48.29 ...
#17 48.29 - mirage-random -> mirage-random.3.0.0
#17 48.29 www-xen zdev requires >= 3.0.0 & < 4.0.0
#17 48.29 - ocaml -> ocaml.5.2.1
#17 48.29 User requested = 5.2.1
#17 48.29 - ocaml-base-compiler -> (problem)
#17 48.29 No known implementations at all
#17 48.29 - randomconv -> (problem)
#17 48.29 dns-certify 8.0.0 requires >= 0.1.2 & < 0.2.0
#17 48.29 tcpip 8.2.0 requires >= 0.2.0
#17 48.29 Rejected candidates:
#17 48.29 randomconv.0.2.0: Incompatible with restriction: >= 0.1.2 & < 0.2.0
#17 48.29 randomconv.0.1.3: Incompatible with restriction: >= 0.2.0
#17 48.29 randomconv.0.1.2: Incompatible with restriction: >= 0.2.0
#17 48.29 randomconv.0.1.1: Incompatible with restriction: >= 0.1.2 & < 0.2.0
#17 48.29 randomconv.0.1.0: Doesn't build with dune
#17 48.29 - tls -> tls.0.17.5
#17 48.29 caqti 2.1.1 requires < 1.0.0
#17 48.45 removing overlay repository [opam-overlays, mirage-overlays]
#17 48.47 Repositories removed from the selections of switch 5.2. Use '--all' to forget about them altogether.
#17 48.49 Repositories removed from the selections of switch 5.2. Use '--all' to forget about them altogether.
#17 48.49 make[2]: *** [Makefile:36: mirage/mirage/www-xen.opam.locked] Error 1
#17 48.49 make[1]: *** [Makefile:39: lock] Error 2
#17 48.49 make: *** [Makefile:51: depend] Error 2
#17 ERROR: process "/bin/sh -c opam exec -- make depend" did not complete successfully: exit code: 2
------
> [13/17] RUN opam exec -- make depend:
48.29 randomconv.0.1.1: Incompatible with restriction: >= 0.1.2 & < 0.2.0
48.29 randomconv.0.1.0: Doesn't build with dune
48.29 - tls -> tls.0.17.5
48.29 caqti 2.1.1 requires < 1.0.0
48.45 removing overlay repository [opam-overlays, mirage-overlays]
48.47 Repositories removed from the selections of switch 5.2. Use '--all' to forget about them altogether.
48.49 Repositories removed from the selections of switch 5.2. Use '--all' to forget about them altogether.
48.49 make[2]: *** [Makefile:36: mirage/mirage/www-xen.opam.locked] Error 1
48.49 make[1]: *** [Makefile:39: lock] Error 2
48.49 make: *** [Makefile:51: depend] Error 2
------
Dockerfile:16
--------------------
14 | RUN opam pin add -n ocaml-solo5 'https://github.com/shym/ocaml-solo5.git#ocaml-5.2-reb'
15 | RUN opam exec -- mirage configure -f mirage/config.ml -t $TARGET $EXTRA_FLAGS_NO_METRICS
16 | >>> RUN opam exec -- make depend
17 | COPY --chown=opam:root . /home/opam/www
18 | RUN opam exec -- mirage configure -f mirage/config.ml -t $TARGET $EXTRA_FLAGS_NO_METRICS
--------------------
ERROR: failed to solve: process "/bin/sh -c opam exec -- make depend" did not complete successfully: exit code: 2
docker-build failed with exit-code 1
2026-03-30 16:27.45: Job failed: Failed: Build failed