Build:
  1. 0
2026-08-26 10:53.46: New job: Build Dockerfile using linux-x86_64 in
                                [https://github.com/mirage/mirage-www.git#refs/heads/master (de96a6aed5c05e88239524dd6c8f0e8f5a7497d9)]
2026-08-26 10:53.46: Will push staging image to ocurrentbuilder/staging:live-mirage-hvt
2026-08-26 10:53.46: Using cache hint "mirage-www-hvt"
2026-08-26 10:53.46: Waiting for resource in pool OCluster
2026-08-26 10:53.46: Waiting for worker…
2026-08-26 11:01.19: Got resource from pool OCluster
Building on toxis.caelum.ci.dev
Submodule path 'data/wiki/files/mirage-skeleton': checked out 'f89ae9e1a80eaf983622cc8c192c1214b219b9e0'
HEAD is now at 1a4e0d6 Use xhtml in atom feed
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'
HEAD is now at de96a6a Merge pull request #868 from reynir/fix-atom
warning: Could not unset core.worktree setting in submodule 'data/wiki/files/mirage-skeleton'
Cleared directory '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 'f89ae9e1a80eaf983622cc8c192c1214b219b9e0'
#0 building with "default" instance using docker driver

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

#2 [internal] load metadata for docker.io/ocaml/opam:debian-12-ocaml-4.14@sha256:f9803e04143923e5b59749d5be12fc63919456028d4af208942c966666033913
#2 DONE 0.7s

#3 [internal] load .dockerignore
#3 transferring context: 64B done
#3 DONE 0.1s

#4 [ 1/16] FROM docker.io/ocaml/opam:debian-12-ocaml-4.14@sha256:f9803e04143923e5b59749d5be12fc63919456028d4af208942c966666033913
#4 DONE 0.0s

#5 [internal] load build context
#5 transferring context: 10.05MB 0.2s done
#5 DONE 0.3s

#6 [11/16] RUN opam exec -- mirage configure -f mirage/config.ml -t hvt --tls=true --metrics --separate-networks
#6 CACHED

#7 [ 2/16] RUN sudo apt-get update && sudo apt-get install autoconf automake -y --no-install-recommends
#7 CACHED

#8 [ 6/16] RUN cd ~/opam-repository && git pull origin master && git reset --hard 2dee2fe30df966714e056f8af164fe0ed7648a63
#8 CACHED

#9 [ 5/16] RUN sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam
#9 CACHED

#10 [ 7/16] RUN opam update
#10 CACHED

#11 [ 8/16] RUN opam install 'mirage>=4.5.0'
#11 CACHED

#12 [10/16] COPY --chown=opam:root mirageio.opam /home/opam/www/
#12 CACHED

#13 [ 3/16] RUN mkdir -p /home/opam/www/mirage
#13 CACHED

#14 [ 4/16] WORKDIR /home/opam/www
#14 CACHED

#15 [ 9/16] COPY --chown=opam:root mirage/config.ml /home/opam/www/mirage/
#15 CACHED

#16 [12/16] RUN opam exec -- make depend
#16 CACHED

#17 [13/16] COPY --chown=opam:root . /home/opam/www
#17 DONE 0.2s

#18 [14/16] RUN opam exec -- mirage configure -f mirage/config.ml -t hvt --tls=true --metrics --separate-networks
#18 1.291 Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
#18 DONE 1.4s

#19 [15/16] RUN opam exec -- dune build mirage/ --profile release
#19 3.096 ocamlfind -toolchain solo5 ocamlopt    -c -o clock_stubs.o clock_stubs.c
#19 3.096 ocamlfind -toolchain solo5 ocamlopt    -c -o mm_stubs.o mm_stubs.c
#19 3.096 ocamlfind -toolchain solo5 ocamlopt    -c -o main.o main.c
#19 3.096 ar r libmirage-solo5_bindings.a clock_stubs.o mm_stubs.o main.o
#19 3.096 ar: creating libmirage-solo5_bindings.a
#19 4.625 /usr/bin/ld: warning: amd64.o: missing .note.GNU-stack section implies executable stack
#19 4.625 /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
#19 8.361 emitter.c: In function 'yaml_emitter_write_plain_scalar':
#19 8.361 emitter.c:28:6: warning: value computed is not used [-Wunused-value]
#19 8.361    28 |      && ((emitter->line_break == YAML_CR_BREAK ?                                \
#19 8.361       |      ^~
#19 8.361 emitter.c:56:11: note: in expansion of macro 'PUT_BREAK'
#19 8.361    56 |          (PUT_BREAK(emitter),                                                   \
#19 8.361       |           ^~~~~~~~~
#19 8.361 emitter.c:1962:18: note: in expansion of macro 'WRITE_BREAK'
#19 8.361  1962 |             if (!WRITE_BREAK(emitter, string)) return 0;
#19 8.361       |                  ^~~~~~~~~~~
#19 8.361 emitter.c: In function 'yaml_emitter_write_single_quoted_scalar':
#19 8.361 emitter.c:28:6: warning: value computed is not used [-Wunused-value]
#19 8.361    28 |      && ((emitter->line_break == YAML_CR_BREAK ?                                \
#19 8.361       |      ^~
#19 8.361 emitter.c:56:11: note: in expansion of macro 'PUT_BREAK'
#19 8.361    56 |          (PUT_BREAK(emitter),                                                   \
#19 8.361       |           ^~~~~~~~~
#19 8.361 emitter.c:2019:18: note: in expansion of macro 'WRITE_BREAK'
#19 8.361  2019 |             if (!WRITE_BREAK(emitter, string)) return 0;
#19 8.361       |                  ^~~~~~~~~~~
#19 8.361 emitter.c: In function 'yaml_emitter_write_literal_scalar':
#19 8.361 emitter.c:28:6: warning: value computed is not used [-Wunused-value]
#19 8.361    28 |      && ((emitter->line_break == YAML_CR_BREAK ?                                \
#19 8.361       |      ^~
#19 8.361 emitter.c:56:11: note: in expansion of macro 'PUT_BREAK'
#19 8.361    56 |          (PUT_BREAK(emitter),                                                   \
#19 8.361       |           ^~~~~~~~~
#19 8.361 emitter.c:2285:18: note: in expansion of macro 'WRITE_BREAK'
#19 8.361  2285 |             if (!WRITE_BREAK(emitter, string)) return 0;
#19 8.361       |                  ^~~~~~~~~~~
#19 8.361 emitter.c: In function 'yaml_emitter_write_folded_scalar':
#19 8.361 emitter.c:28:6: warning: value computed is not used [-Wunused-value]
#19 8.361    28 |      && ((emitter->line_break == YAML_CR_BREAK ?                                \
#19 8.361       |      ^~
#19 8.361 emitter.c:56:11: note: in expansion of macro 'PUT_BREAK'
#19 8.361    56 |          (PUT_BREAK(emitter),                                                   \
#19 8.361       |           ^~~~~~~~~
#19 8.361 emitter.c:2334:18: note: in expansion of macro 'WRITE_BREAK'
#19 8.361  2334 |             if (!WRITE_BREAK(emitter, string)) return 0;
#19 8.361       |                  ^~~~~~~~~~~
#19 8.907 Browserslist: caniuse-lite is outdated. Please run:
#19 8.907   npx update-browserslist-db@latest
#19 8.907   Why you should do it regularly: https://github.com/browserslist/update-db#readme
#19 8.907 
#19 8.907 Rebuilding...
#19 8.907 
#19 8.907 Done in 963ms.
#19 28.60 configure: WARNING: using cross tools not prefixed with host triplet
#19 28.60 configure: WARNING: cannot check for properly working vsnprintf when cross compiling, will assume it's ok
#19 28.81 binary ocaml: found in /home/opam/.opam/4.14/bin
#19 28.81 binary ocamlc: found in /home/opam/.opam/4.14/bin
#19 28.81 binary ocamldep: found in /home/opam/.opam/4.14/bin
#19 28.81 binary ocamlmklib: found in /home/opam/.opam/4.14/bin
#19 28.81 binary ocamldoc: found in /home/opam/.opam/4.14/bin
#19 28.81 binary x86_64-solo5-none-static-cc: found in /home/opam/.opam/4.14/bin
#19 28.81 binary ocamlopt: found in /home/opam/.opam/4.14/bin
#19 28.81 checking compilation with  -I/home/opam/www/_build/solo5/mirage/duniverse/Zarith/../../../../install/solo5/lib/gmp/: working
#19 28.81 include caml/mlvalues.h: found
#19 28.81 library dynlink.cmxa: found
#19 28.81 binary ocamlfind: found in /home/opam/.opam/4.14/bin
#19 28.81 OCaml's word size is 64
#19 28.81 package gmp: found
#19 28.81 OCaml supports -bin-annot to produce documentation
#19 28.81 
#19 28.81 detected configuration:
#19 28.81 
#19 28.81   native-code:          yes
#19 28.81   dynamic linking:      yes
#19 28.81   defines:              -DHAS_GMP 
#19 28.81   includes:             -I/home/opam/.opam/4.14/solo5-sysroot/lib/ocaml -I/home/opam/www/_build/solo5/mirage/duniverse/Zarith/../../../../install/solo5/lib/gmp/ 
#19 28.81   libraries:             -lgmp 
#19 28.81   linker options:       -L/home/opam/www/_build/solo5/mirage/duniverse/Zarith/../../../../install/solo5/lib/gmp/
#19 28.81   C options:            -I/home/opam/www/_build/solo5/mirage/duniverse/Zarith/../../../../install/solo5/lib/gmp/
#19 28.81   installation path:    /home/opam/.opam/4.14/lib
#19 28.81   installation method   findlib
#19 28.81 
#19 28.81 configuration successful!
#19 28.81 now type "make" to build
#19 28.81 then type "make install" or "sudo make install" to install
#19 35.75 /usr/bin/ld: warning: amd64.o: missing .note.GNU-stack section implies executable stack
#19 35.75 /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
#19 DONE 36.4s

#20 [16/16] RUN if [ hvt = hvt ]; then sudo cp mirage/dist/www.hvt /unikernel.hvt; fi
#20 DONE 0.6s

#21 exporting to image
#21 exporting layers
#21 exporting layers 12.6s done
#21 writing image sha256:57554204f1341437c6b7fc44b566917cba8ff60dc0500db737360ba293620f9d done
#21 DONE 12.6s
Pushing "sha256:57554204f1341437c6b7fc44b566917cba8ff60dc0500db737360ba293620f9d" to "ocurrentbuilder/staging:live-mirage-hvt" as user "ocurrentbuilder"
Login Succeeded
The push refers to repository [docker.io/ocurrentbuilder/staging]
8675dc09757d: Preparing
7cf191ebe11c: Preparing
54354b9eb74f: Preparing
de68c1aa48ab: Preparing
42ca082bb7d9: Preparing
d88bae76772d: Preparing
c330c782345e: Preparing
1fccbecf917f: Preparing
20d10673d611: Preparing
855a9f9f4ef2: Preparing
8cf8c768f5a3: Preparing
1a61d0f202b2: Preparing
5f70bf18a086: Preparing
a220cb986c22: Preparing
144dcbf7aaa7: Preparing
99fc57a195fe: Preparing
506cb4c8fc2a: Preparing
a1b4aed70c64: Preparing
d58670df5982: Preparing
71f5cd02f6db: Preparing
6066ef6b2bce: Preparing
1fccbecf917f: Waiting
86bc711e7edc: Preparing
d88bae76772d: Waiting
20d10673d611: Waiting
855a9f9f4ef2: Waiting
bde79c17290b: Preparing
c330c782345e: Waiting
5f70bf18a086: Waiting
8cf8c768f5a3: Waiting
a220cb986c22: Waiting
d58670df5982: Waiting
53638fbcca9c: Preparing
1a61d0f202b2: Waiting
144dcbf7aaa7: Waiting
71f5cd02f6db: Waiting
99fc57a195fe: Waiting
874e661c9298: Preparing
6066ef6b2bce: Waiting
506cb4c8fc2a: Waiting
a1b4aed70c64: Waiting
678ddb28c26b: Preparing
c0da4e620884: Preparing
bde79c17290b: Waiting
86bc711e7edc: Waiting
53638fbcca9c: Waiting
10a7e4214392: Preparing
678ddb28c26b: Waiting
874e661c9298: Waiting
2301cec9a791: Preparing
c0da4e620884: Waiting
10a7e4214392: Waiting
17a6ff9813ab: Preparing
2301cec9a791: Waiting
00797e348e36: Preparing
17a6ff9813ab: Waiting
4de89c295e8e: Preparing
00797e348e36: Waiting
15deaa712f86: Preparing
4de89c295e8e: Waiting
0ae76df86d2f: Preparing
15deaa712f86: Waiting
409ce5003bda: Preparing
0ae76df86d2f: Waiting
5fa7c950a3f5: Preparing
409ce5003bda: Waiting
d9869bd71a48: Preparing
5fa7c950a3f5: Waiting
5f70bf18a086: Preparing
735c90ca69ab: Preparing
381128a62f08: Preparing
08e2b7e56c57: Preparing
0bca0280f623: Preparing
735c90ca69ab: Waiting
703f8a293fcf: Preparing
703f8a293fcf: Preparing
0c681c83dc84: Preparing
08e2b7e56c57: Waiting
381128a62f08: Waiting
7ca1c38e143e: Preparing
0bca0280f623: Waiting
dce9dcd5e251: Preparing
7ca1c38e143e: Waiting
0c681c83dc84: Waiting
2aea383aa5e0: Preparing
703f8a293fcf: Waiting
dce9dcd5e251: Waiting
707ba9f4cc2a: Preparing
2aea383aa5e0: Waiting
4fd670e6fc99: Preparing
707ba9f4cc2a: Waiting
20ff6a58df54: Preparing
4fd670e6fc99: Waiting
0b150f95abd9: Preparing
20ff6a58df54: Waiting
d7da112249ed: Preparing
0b150f95abd9: Waiting
3217c633336e: Preparing
d7da112249ed: Waiting
c32e00f65fa5: Preparing
1f1e90de6b75: Preparing
c32e00f65fa5: Waiting
5fd95f615b2c: Preparing
1f1e90de6b75: Waiting
fb9b83e6558b: Preparing
af95847b4a98: Preparing
5fd95f615b2c: Waiting
6f1cb8f09a4a: Preparing
fb9b83e6558b: Waiting
54354b9eb74f: Pushed
de68c1aa48ab: Pushed
8675dc09757d: Pushed
c330c782345e: Pushed
d88bae76772d: Pushed
1fccbecf917f: Pushed
8cf8c768f5a3: Pushed
1a61d0f202b2: Pushed
5f70bf18a086: Layer already exists
a220cb986c22: Pushed
144dcbf7aaa7: Pushed
99fc57a195fe: Layer already exists
506cb4c8fc2a: Layer already exists
a1b4aed70c64: Layer already exists
d58670df5982: Layer already exists
71f5cd02f6db: Layer already exists
6066ef6b2bce: Layer already exists
86bc711e7edc: Layer already exists
bde79c17290b: Layer already exists
53638fbcca9c: Layer already exists
874e661c9298: Layer already exists
678ddb28c26b: Layer already exists
c0da4e620884: Layer already exists
10a7e4214392: Layer already exists
2301cec9a791: Layer already exists
17a6ff9813ab: Layer already exists
00797e348e36: Layer already exists
4de89c295e8e: Layer already exists
15deaa712f86: Layer already exists
0ae76df86d2f: Layer already exists
409ce5003bda: Layer already exists
5fa7c950a3f5: Layer already exists
d9869bd71a48: Layer already exists
735c90ca69ab: Layer already exists
381128a62f08: Layer already exists
08e2b7e56c57: Layer already exists
0bca0280f623: Layer already exists
703f8a293fcf: Layer already exists
0c681c83dc84: Layer already exists
7ca1c38e143e: Layer already exists
dce9dcd5e251: Layer already exists
2aea383aa5e0: Layer already exists
707ba9f4cc2a: Layer already exists
4fd670e6fc99: Layer already exists
20ff6a58df54: Layer already exists
0b150f95abd9: Layer already exists
d7da112249ed: Layer already exists
3217c633336e: Layer already exists
c32e00f65fa5: Layer already exists
20d10673d611: Pushed
1f1e90de6b75: Layer already exists
5fd95f615b2c: Layer already exists
fb9b83e6558b: Layer already exists
af95847b4a98: Layer already exists
6f1cb8f09a4a: Layer already exists
855a9f9f4ef2: Pushed
7cf191ebe11c: Pushed
42ca082bb7d9: Pushed
live-mirage-hvt: digest: sha256:696caa2db6c913e1e2a43eb797a094067cc35d6204e2b7614d020d446fff4933 size: 12866
The push refers to repository [docker.io/ocurrentbuilder/staging]
8675dc09757d: Preparing
7cf191ebe11c: Preparing
54354b9eb74f: Preparing
de68c1aa48ab: Preparing
42ca082bb7d9: Preparing
d88bae76772d: Preparing
c330c782345e: Preparing
1fccbecf917f: Preparing
20d10673d611: Preparing
855a9f9f4ef2: Preparing
8cf8c768f5a3: Preparing
1a61d0f202b2: Preparing
5f70bf18a086: Preparing
c330c782345e: Waiting
a220cb986c22: Preparing
144dcbf7aaa7: Preparing
1fccbecf917f: Waiting
855a9f9f4ef2: Waiting
20d10673d611: Waiting
8cf8c768f5a3: Waiting
d88bae76772d: Waiting
1a61d0f202b2: Waiting
5f70bf18a086: Waiting
99fc57a195fe: Preparing
506cb4c8fc2a: Preparing
a220cb986c22: Waiting
a1b4aed70c64: Preparing
d58670df5982: Preparing
144dcbf7aaa7: Waiting
99fc57a195fe: Waiting
506cb4c8fc2a: Waiting
a1b4aed70c64: Waiting
71f5cd02f6db: Preparing
d58670df5982: Waiting
6066ef6b2bce: Preparing
71f5cd02f6db: Waiting
86bc711e7edc: Preparing
6066ef6b2bce: Waiting
bde79c17290b: Preparing
86bc711e7edc: Waiting
53638fbcca9c: Preparing
bde79c17290b: Waiting
874e661c9298: Preparing
678ddb28c26b: Preparing
53638fbcca9c: Waiting
c0da4e620884: Preparing
874e661c9298: Waiting
678ddb28c26b: Waiting
10a7e4214392: Preparing
2301cec9a791: Preparing
c0da4e620884: Waiting
10a7e4214392: Waiting
17a6ff9813ab: Preparing
2301cec9a791: Waiting
00797e348e36: Preparing
4de89c295e8e: Preparing
17a6ff9813ab: Waiting
15deaa712f86: Preparing
0ae76df86d2f: Preparing
00797e348e36: Waiting
4de89c295e8e: Waiting
409ce5003bda: Preparing
15deaa712f86: Waiting
0ae76df86d2f: Waiting
5fa7c950a3f5: Preparing
d9869bd71a48: Preparing
5fa7c950a3f5: Waiting
409ce5003bda: Waiting
5f70bf18a086: Preparing
735c90ca69ab: Preparing
d9869bd71a48: Waiting
381128a62f08: Preparing
735c90ca69ab: Waiting
08e2b7e56c57: Preparing
0bca0280f623: Preparing
703f8a293fcf: Preparing
08e2b7e56c57: Waiting
381128a62f08: Waiting
703f8a293fcf: Preparing
0c681c83dc84: Preparing
703f8a293fcf: Waiting
7ca1c38e143e: Preparing
0bca0280f623: Waiting
0c681c83dc84: Waiting
dce9dcd5e251: Preparing
7ca1c38e143e: Waiting
2aea383aa5e0: Preparing
707ba9f4cc2a: Preparing
4fd670e6fc99: Preparing
dce9dcd5e251: Waiting
20ff6a58df54: Preparing
2aea383aa5e0: Waiting
707ba9f4cc2a: Waiting
0b150f95abd9: Preparing
4fd670e6fc99: Waiting
d7da112249ed: Preparing
0b150f95abd9: Waiting
20ff6a58df54: Waiting
3217c633336e: Preparing
c32e00f65fa5: Preparing
1f1e90de6b75: Preparing
3217c633336e: Waiting
5fd95f615b2c: Preparing
c32e00f65fa5: Waiting
fb9b83e6558b: Preparing
1f1e90de6b75: Waiting
5fd95f615b2c: Waiting
af95847b4a98: Preparing
fb9b83e6558b: Waiting
6f1cb8f09a4a: Preparing
af95847b4a98: Waiting
6f1cb8f09a4a: Waiting
de68c1aa48ab: Layer already exists
8675dc09757d: Layer already exists
42ca082bb7d9: Layer already exists
7cf191ebe11c: Layer already exists
54354b9eb74f: Layer already exists
d88bae76772d: Layer already exists
c330c782345e: Layer already exists
1fccbecf917f: Layer already exists
855a9f9f4ef2: Layer already exists
20d10673d611: Layer already exists
8cf8c768f5a3: Layer already exists
1a61d0f202b2: Layer already exists
144dcbf7aaa7: Layer already exists
a220cb986c22: Layer already exists
5f70bf18a086: Layer already exists
99fc57a195fe: Layer already exists
506cb4c8fc2a: Layer already exists
a1b4aed70c64: Layer already exists
71f5cd02f6db: Layer already exists
d58670df5982: Layer already exists
6066ef6b2bce: Layer already exists
bde79c17290b: Layer already exists
86bc711e7edc: Layer already exists
53638fbcca9c: Layer already exists
874e661c9298: Layer already exists
678ddb28c26b: Layer already exists
2301cec9a791: Layer already exists
10a7e4214392: Layer already exists
c0da4e620884: Layer already exists
17a6ff9813ab: Layer already exists
15deaa712f86: Layer already exists
4de89c295e8e: Layer already exists
00797e348e36: Layer already exists
0ae76df86d2f: Layer already exists
409ce5003bda: Layer already exists
d9869bd71a48: Layer already exists
5fa7c950a3f5: Layer already exists
735c90ca69ab: Layer already exists
381128a62f08: Layer already exists
08e2b7e56c57: Layer already exists
0bca0280f623: Layer already exists
0c681c83dc84: Layer already exists
703f8a293fcf: Layer already exists
7ca1c38e143e: Layer already exists
dce9dcd5e251: Layer already exists
707ba9f4cc2a: Layer already exists
2aea383aa5e0: Layer already exists
20ff6a58df54: Layer already exists
4fd670e6fc99: Layer already exists
0b150f95abd9: Layer already exists
3217c633336e: Layer already exists
d7da112249ed: Layer already exists
1f1e90de6b75: Layer already exists
c32e00f65fa5: Layer already exists
5fd95f615b2c: Layer already exists
fb9b83e6558b: Layer already exists
af95847b4a98: Layer already exists
6f1cb8f09a4a: Layer already exists
live-mirage-hvt: digest: sha256:696caa2db6c913e1e2a43eb797a094067cc35d6204e2b7614d020d446fff4933 size: 12866
Job succeeded
2026-08-26 11:06.00: Job succeeded