2025-07-09 12:31.09: New job: test jmid/mutaml https://github.com/jmid/mutaml.git#refs/heads/main (983230ac24d5433c1d42e18e97ac0ac70149ca62) (linux-x86_64:alpine-3.21-5.3_opam-2.3)
Base: ocaml/opam:alpine-3.21-ocaml-5.3@sha256:04615dc1fa88c0285b28799f65b32f2814c854db498aea42fb9ff8c430a28380
Opam project build
To reproduce locally:
git clone --recursive "https://github.com/jmid/mutaml.git" -b "main" && cd "mutaml" && git reset --hard 983230ac
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.21-ocaml-5.3@sha256:04615dc1fa88c0285b28799f65b32f2814c854db498aea42fb9ff8c430a28380
# alpine-3.21-5.3_opam-2.3
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.3 /usr/bin/opam
RUN opam init --reinit -ni
RUN uname -rs && opam exec -- ocaml -version && opam --version
WORKDIR /src
RUN sudo chown opam /src
RUN cd ~/opam-repository && (git cat-file -e 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b || git fetch origin master) && git reset -q --hard 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 mutaml.opam ./
RUN opam pin add -yn mutaml.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="base.v0.17.3 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base conf-diffutils.2 conf-timeout.1 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ocamlfind.1.9.8 octavius.1.2.2 ounit2.2.2.7 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_js_style.v0.17.0 ppx_yojson_conv.v0.17.0 ppx_yojson_conv_lib.v0.17.0 ppxlib.0.35.0 seq.base sexplib0.v0.17.0 stdlib-random.1.2.0 stdlib-shims.0.3.0 yojson.3.0.0"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.3 --depext-only -y mutaml.dev $DEPS
RUN opam install $DEPS
COPY --chown=1000:1000 . /src
RUN opam exec -- dune build @install @check @runtest && rm -rf _build
END-OF-DOCKERFILE
docker build .
END-REPRO-BLOCK
2025-07-09 12:31.09: Using cache hint "jmid/mutaml-ocaml/opam:alpine-3.21-ocaml-5.3@sha256:04615dc1fa88c0285b28799f65b32f2814c854db498aea42fb9ff8c430a28380-alpine-3.21-5.3_opam-2.3-db0d098a7eaf02949f58d8acaa6bd0ca"
2025-07-09 12:31.09: Using OBuilder spec:
((from ocaml/opam:alpine-3.21-ocaml-5.3@sha256:04615dc1fa88c0285b28799f65b32f2814c854db498aea42fb9ff8c430a28380)
(comment alpine-3.21-5.3_opam-2.3)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(workdir /src)
(run (shell "sudo ln -f /usr/bin/opam-2.3 /usr/bin/opam"))
(run (shell "opam init --reinit -ni"))
(run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
(workdir /src)
(run (shell "sudo chown opam /src"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b || git fetch origin master) && git reset -q --hard 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src mutaml.opam) (dst ./))
(run (network host)
(shell "opam pin add -yn mutaml.dev './'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
(env DEPS "base.v0.17.3 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base conf-diffutils.2 conf-timeout.1 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ocamlfind.1.9.8 octavius.1.2.2 ounit2.2.2.7 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_js_style.v0.17.0 ppx_yojson_conv.v0.17.0 ppx_yojson_conv_lib.v0.17.0 ppxlib.0.35.0 seq.base sexplib0.v0.17.0 stdlib-random.1.2.0 stdlib-shims.0.3.0 yojson.3.0.0")
(env CI true)
(env OCAMLCI true)
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.3 --depext-only -y mutaml.dev $DEPS"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
(copy (src .) (dst /src))
(run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
)
2025-07-09 12:31.09: Waiting for resource in pool OCluster
2025-07-09 12:31.23: Waiting for worker…
2025-07-09 12:35.24: Got resource from pool OCluster
Building on odawa.caelum.ci.dev
All commits already cached
HEAD is now at 983230a Merge pull request #41 from jmid/avoid-opam-patching
(from ocaml/opam:alpine-3.21-ocaml-5.3@sha256:04615dc1fa88c0285b28799f65b32f2814c854db498aea42fb9ff8c430a28380)
2025-07-09 12:35.25 ---> using "b1eb2a8af4058a254870e5cad61297a06793cbcf25fc0fa70ddab0692ceef147" from cache
/: (comment alpine-3.21-5.3_opam-2.3)
/: (user (uid 1000) (gid 1000))
/: (env CLICOLOR_FORCE 1)
/: (env OPAMCOLOR always)
/: (workdir /src)
/src: (run (shell "sudo ln -f /usr/bin/opam-2.3 /usr/bin/opam"))
2025-07-09 12:35.25 ---> using "72a43fed50ca4b22fad6057f4d18290b4cb956a1be690ef2ac7f62bd3176987a" from cache
/src: (run (shell "opam init --reinit -ni"))
Configuring from /home/opam/.opamrc and then from built-in defaults.
Checking for available remotes: rsync and local, git.
- you won't be able to use mercurial repositories unless you install the hg command on your system.
- you won't be able to use darcs repositories unless you install the darcs command on your system.
This development version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted.
You may want to back it up before going further.
Continue? [y/n] y
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2025-07-09 12:35.40 ---> saved as "dffd9938039301ebc6cca6d597e878cfb8a245c9dfa32f07900ab56da35e37dc"
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 6.8.0-60-generic
The OCaml toplevel, version 5.3.0
2.3.0
2025-07-09 12:35.40 ---> saved as "8f9a1993785784c76c1507256d4c3a0742ea404a0d05aaa640ab910b812307e9"
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2025-07-09 12:35.40 ---> saved as "d0c65e3f07a69cbc2fcd3ad4787a51328d54858d7b412a5dcb90232d4889600b"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b || git fetch origin master) && git reset -q --hard 4f977ccb61d6694f12c27cd4e9b06ef51088bd9b && git log --no-decorate -n1 --oneline && opam update -u"))
4f977ccb61 Merge pull request #28109 from mseri/frama-c
<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///home/opam/opam-repository
Everything as up-to-date as possible (run with --verbose to show unavailable upgrades).
However, you may "opam upgrade" these packages explicitly, which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2025-07-09 12:35.57 ---> saved as "259483066c1d6022e97048536be75a77c3df9b0d12c781843522c6f39caf7b3a"
/src: (copy (src mutaml.opam) (dst ./))
2025-07-09 12:35.58 ---> saved as "2f41e9a487a34506b601a1795be7a5ca3d64084baa34506c1e3fee0ea8622d47"
/src: (run (network host)
(shell "opam pin add -yn mutaml.dev './'"))
[mutaml.dev] synchronised (file:///src)
mutaml is now pinned to file:///src (version dev)
2025-07-09 12:36.00 ---> saved as "ba0dcd967d0ac68455d7da885ed0ee19f0afef492f22a87422ab523839e63905"
/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-07-09 12:36.00 ---> saved as "457e028307defe42550d92b7373b8f5857ecd70a5b23a8fe9c9f718612c27b0b"
/src: (env DEPS "base.v0.17.3 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base conf-diffutils.2 conf-timeout.1 cppo.1.8.0 csexp.1.5.2 dune.3.19.1 dune-configurator.3.19.1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml_intrinsics_kernel.v0.17.1 ocamlfind.1.9.8 octavius.1.2.2 ounit2.2.2.7 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_js_style.v0.17.0 ppx_yojson_conv.v0.17.0 ppx_yojson_conv_lib.v0.17.0 ppxlib.0.35.0 seq.base sexplib0.v0.17.0 stdlib-random.1.2.0 stdlib-shims.0.3.0 yojson.3.0.0")
/src: (env CI true)
/src: (env OCAMLCI true)
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.3 --depext-only -y mutaml.dev $DEPS"))
+ /usr/bin/sudo "apk" "update"
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
- v3.21.3-635-gca82c367c9e [https://dl-cdn.alpinelinux.org/alpine/v3.21/main]
- v3.21.3-634-g4638c219547 [https://dl-cdn.alpinelinux.org/alpine/v3.21/community]
- v3.23.0_alpha20250612-1887-gec2710cd7d6 [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v3.23.0_alpha20250612-1903-g4c882391b17 [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v3.23.0_alpha20250612-1903-g4c882391b17 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 59032 distinct packages available
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[mutaml.dev] synchronised (file:///src)
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 3).
[NOTE] Package ocaml-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml is already installed (current version is 5.3.0).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-nnp is already installed (current version is base).
[NOTE] Package base-effects is already installed (current version is base).
[NOTE] Package base-domains is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following system packages will first need to be installed:
diffutils
<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
+ /usr/bin/sudo "apk" "add" "diffutils"
- (1/1) Installing diffutils (3.10-r0)
- Executing busybox-1.37.0-r12.trigger
- OK: 306 MiB in 103 packages
2025-07-09 12:36.10 ---> saved as "78611bc3286ff6700a64944f8977096a0c0b31e5fa933a5625cd5f8ab098e6b4"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 3).
[NOTE] Package ocaml-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml is already installed (current version is 5.3.0).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-nnp is already installed (current version is base).
[NOTE] Package base-effects is already installed (current version is base).
[NOTE] Package base-domains is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 23 packages
- install base v0.17.3
- install conf-diffutils 2
- install conf-timeout 1
- install cppo 1.8.0
- install csexp 1.5.2
- install dune 3.19.1
- install dune-configurator 3.19.1
- install ocaml-compiler-libs v0.17.0
- install ocaml_intrinsics_kernel v0.17.1
- install ocamlfind 1.9.8
- install octavius 1.2.2
- install ounit2 2.2.7
- install ppx_derivers 1.2.1
- install ppx_deriving 6.0.3
- install ppx_js_style v0.17.0
- install ppx_yojson_conv v0.17.0
- install ppx_yojson_conv_lib v0.17.0
- install ppxlib 0.35.0
- install seq base
- install sexplib0 v0.17.0
- install stdlib-random 1.2.0
- install stdlib-shims 0.3.0
- install yojson 3.0.0
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> installed conf-diffutils.2
-> retrieved cppo.1.8.0 (cached)
-> retrieved base.v0.17.3 (cached)
-> retrieved csexp.1.5.2 (cached)
-> installed conf-timeout.1
-> retrieved ocaml-compiler-libs.v0.17.0 (cached)
-> retrieved ocaml_intrinsics_kernel.v0.17.1 (cached)
-> retrieved octavius.1.2.2 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ounit2.2.2.7 (cached)
-> retrieved ppx_derivers.1.2.1 (cached)
-> retrieved ppx_js_style.v0.17.0 (cached)
-> retrieved ppx_deriving.6.0.3 (cached)
-> retrieved ppx_yojson_conv.v0.17.0 (cached)
-> retrieved ppx_yojson_conv_lib.v0.17.0 (cached)
-> retrieved seq.base (cached)
-> installed seq.base
-> retrieved sexplib0.v0.17.0 (cached)
-> retrieved stdlib-random.1.2.0 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved yojson.3.0.0 (cached)
-> retrieved ppxlib.0.35.0 (cached)
-> retrieved dune.3.19.1, dune-configurator.3.19.1 (cached)
-> installed ocamlfind.1.9.8
-> installed dune.3.19.1
-> installed ppx_derivers.1.2.1
-> installed csexp.1.5.2
-> installed ocaml_intrinsics_kernel.v0.17.1
-> installed sexplib0.v0.17.0
-> installed stdlib-shims.0.3.0
-> installed cppo.1.8.0
-> installed ocaml-compiler-libs.v0.17.0
-> installed octavius.1.2.2
-> installed yojson.3.0.0
-> installed stdlib-random.1.2.0
-> installed ppx_yojson_conv_lib.v0.17.0
-> installed ounit2.2.2.7
-> installed dune-configurator.3.19.1
-> installed base.v0.17.3
-> installed ppxlib.0.35.0
-> installed ppx_js_style.v0.17.0
-> installed ppx_deriving.6.0.3
-> installed ppx_yojson_conv.v0.17.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-07-09 12:37.01 ---> saved as "1d42e5619599cbabf42d90856fce481cff2dbd1cbebf1fb7047c8cd6e4c40ea1"
/src: (copy (src .) (dst /src))
2025-07-09 12:37.01 ---> saved as "22f3acf9abf319d04e08acb8c1944c158f3a6beba14b8f16aa3c238705a73df9"
/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/examples/testproj-2-modules/test && ./ounittest.exe)
..
Ran: 2 tests in: 0.10 seconds.
OK
(cd _build/default/examples/testproj-1-module && ./ounittest.exe)
....
Ran: 4 tests in: 0.10 seconds.
OK
2025-07-09 12:37.36 ---> saved as "c33ee91bf79cb354fed99dd5c41e7af71598a1d0d62c20732b88727386d20429"
Job succeeded
2025-07-09 12:37.37: Job succeeded