Organisationsocurrentocaml-dockerfile05a6bd (remove-opam-2)(lower-bound)

(lower-bound)

Link Copied
Code Copied

Logs

2026-04-03 14:25.37: New job: test ocurrent/ocaml-dockerfile https://github.com/ocurrent/ocaml-dockerfile.git#refs/heads/remove-opam-2 (05a6bd14f2e76fe006a6e4069cc832017a0d02a7) (linux-x86_64:(lower-bound))
Base: ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47
Opam project build


To reproduce locally:


git clone --recursive "https://github.com/ocurrent/ocaml-dockerfile.git" -b "remove-opam-2" && cd "ocaml-dockerfile" && git reset --hard 05a6bd14
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47
# debian-13-4.08_opam-2.5
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.5 /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 31462e7d24da1419f9eb9099a0b60ea507d91ef6 || git fetch origin master) && git reset -q --hard 31462e7d24da1419f9eb9099a0b60ea507d91ef6 && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 dockerfile.opam dockerfile-opam.opam dockerfile-cmd.opam ./
RUN opam pin add -yn dockerfile.dev './' && \
opam pin add -yn dockerfile-opam.dev './' && \
opam pin add -yn dockerfile-cmd.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="alcotest.1.9.1 astring.0.8.3 base.v0.12.2 base-bigarray.base base-bytes.base base-threads.base base-unix.base bos.0.2.1 cmdliner.1.3.0 conf-m4.1 dune.3.20.0 dune-configurator.2.5.1 dune-private-libs.2.5.1 fmt.0.9.0 fpath.0.7.3 jbuilder.1.0+beta20.1 logs.0.7.0 ocaml.4.08.1 ocaml-base-compiler.4.08.1 ocaml-compiler-libs.v0.11.0 ocaml-config.1 ocaml-migrate-parsetree.1.3.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.1 ocamlbuild.0.14.0 ocamlfind.1.8.0 ppx_derivers.1.0 ppx_sexp_conv.v0.12.0 ppxlib.0.8.1 re.1.7.2 result.1.5 rresult.0.7.0 sexplib0.v0.12.0 stdio.v0.12.0 stdlib-shims.0.1.0 topkg.1.0.8 uutf.1.0.3"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.5 --depext-only -y dockerfile.dev dockerfile-opam.dev dockerfile-cmd.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


2026-04-03 14:25.37: Using cache hint "ocurrent/ocaml-dockerfile-ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47-debian-13-4.08_opam-2.5-7d625b5380c5ab2be755d355c7ac8d75"
2026-04-03 14:25.37: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47)
(comment debian-13-4.08_opam-2.5)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(workdir /src)
(run (shell "sudo ln -f /usr/bin/opam-2.5 /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 31462e7d24da1419f9eb9099a0b60ea507d91ef6 || git fetch origin master) && git reset -q --hard 31462e7d24da1419f9eb9099a0b60ea507d91ef6 && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src dockerfile.opam dockerfile-opam.opam dockerfile-cmd.opam)
(dst ./))
(run (network host)
(shell  "opam pin add -yn dockerfile.dev './' && \
\nopam pin add -yn dockerfile-opam.dev './' && \
\nopam pin add -yn dockerfile-cmd.dev './'"))
(run (shell "echo '(lang dune 3.0)' > './dune-project'"))
(env DEPS "alcotest.1.9.1 astring.0.8.3 base.v0.12.2 base-bigarray.base base-bytes.base base-threads.base base-unix.base bos.0.2.1 cmdliner.1.3.0 conf-m4.1 dune.3.20.0 dune-configurator.2.5.1 dune-private-libs.2.5.1 fmt.0.9.0 fpath.0.7.3 jbuilder.1.0+beta20.1 logs.0.7.0 ocaml.4.08.1 ocaml-base-compiler.4.08.1 ocaml-compiler-libs.v0.11.0 ocaml-config.1 ocaml-migrate-parsetree.1.3.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.1 ocamlbuild.0.14.0 ocamlfind.1.8.0 ppx_derivers.1.0 ppx_sexp_conv.v0.12.0 ppxlib.0.8.1 re.1.7.2 result.1.5 rresult.0.7.0 sexplib0.v0.12.0 stdio.v0.12.0 stdlib-shims.0.1.0 topkg.1.0.8 uutf.1.0.3")
(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.5 --depext-only -y dockerfile.dev dockerfile-opam.dev dockerfile-cmd.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"))
)


2026-04-03 14:25.37: Waiting for resource in pool OCluster
2026-04-03 14:25.37: Waiting for worker…
2026-04-03 14:26.10: Got resource from pool OCluster
Building on eumache.caelum.ci.dev
All commits already cached
HEAD is now at 05a6bd1 alias opam 2.1 to /usr/bin/opaj


(from ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47)
Unable to find image 'ocaml/opam:debian-13-ocaml-4.08@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47' locally
docker.io/ocaml/opam@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47: Pulling from ocaml/opam
866771c43bf5: Already exists
1e49bea09367: Already exists
e793768537e6: Already exists
ed323d3d481a: Already exists
7df34a5cd5f1: Already exists
fd712d3eb935: Already exists
4b9fb8c99118: Already exists
9d9a01948b94: Already exists
0f1514f90b32: Already exists
e1ec5a753447: Already exists
03cc323e2f71: Already exists
c09c08ea9749: Already exists
b36b619f8e6b: Already exists
195344ca5274: Already exists
228ee78582a6: Already exists
504bde1c25b3: Already exists
9d8b1356c89f: Already exists
9d8b1356c89f: Already exists
568fb6dda155: Already exists
c499c9198aea: Already exists
048e5e358118: Already exists
871ca48eb45d: Already exists
4f4fb700ef54: Already exists
a5a2568b9df9: Already exists
068cf3106ac8: Already exists
559f54ec9b29: Already exists
798ffd96fde5: Already exists
e9a891bf80d7: Already exists
d720cfe12674: Already exists
c81c932f4a91: Already exists
79f24fa3bb11: Already exists
8c1debcd8c20: Already exists
1bb2cfea7250: Already exists
2b3d3ca75e4c: Already exists
557cacaf263c: Already exists
d10483022eef: Already exists
7b62a90d8223: Already exists
28ce8ea66e72: Already exists
d975909ea717: Already exists
5c215c69c247: Already exists
e7c082452a54: Already exists
b7df74d48e36: Already exists
66e3060fde97: Already exists
623e45e1559d: Already exists
9251109c0e89: Already exists
Digest: sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47
Status: Downloaded newer image for ocaml/opam@sha256:048f41796adc21a1c591ba8a7027365f75adbd0cc47a89cb4ad5d856f4815f47
2026-04-03 14:26.10 ---> using "867303d7f04cee0d3e23016229d2a45a69516628a14dbff52754cd3cb283f66f" from cache


/: (comment debian-13-4.08_opam-2.5)


/: (user (uid 1000) (gid 1000))


/: (env CLICOLOR_FORCE 1)


/: (env OPAMCOLOR always)


/: (workdir /src)


/src: (run (shell "sudo ln -f /usr/bin/opam-2.5 /usr/bin/opam"))
2026-04-03 14:26.10 ---> using "c7be1a1bf56a9af41378ced74906e3276ce5576096fe479f7bc8725acfbd5123" 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 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
2026-04-03 14:26.10 ---> using "ccdab575862d9a949d4903bc8aad034b89b0a05240bdda721b9ce0cce4230d75" from cache


/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-173-generic
The OCaml toplevel, version 4.08.1
2.5.0
2026-04-03 14:26.10 ---> using "f19adf73b8544d8f3f9b81cecf006440779a1d47bca42b32961acb7a712c1b5f" from cache


/src: (workdir /src)


/src: (run (shell "sudo chown opam /src"))
2026-04-03 14:26.10 ---> using "edbc028d6daadd2aebe00894d268f0d76ea78071faf901b745bf45b52fda2d76" from cache


/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 31462e7d24da1419f9eb9099a0b60ea507d91ef6 || git fetch origin master) && git reset -q --hard 31462e7d24da1419f9eb9099a0b60ea507d91ef6 && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch                  master     -> FETCH_HEAD
ffb54b9bdd..2a4b439041  master     -> origin/master
31462e7d24 Merge pull request #29451 from dra27/relocatable-package


<><> 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 at these versions (e.g. "opam upgrade ocaml.5.5.0"), which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2026-04-03 14:26.10 ---> using "b3e02a1ba3f82e7ec96f8d839a408a2515d3bc782ff8f9b3a0a2c3cefea54e28" from cache


/src: (copy (src dockerfile.opam dockerfile-opam.opam dockerfile-cmd.opam)
(dst ./))
2026-04-03 14:26.10 ---> using "25c5a5de7b0650482f1ee1007346a1b50adf9e9d04f58926331f4d40cb964294" from cache


/src: (run (network host)
(shell  "opam pin add -yn dockerfile.dev './' && \
\nopam pin add -yn dockerfile-opam.dev './' && \
\nopam pin add -yn dockerfile-cmd.dev './'"))
[dockerfile.dev] synchronised (file:///src)
dockerfile is now pinned to file:///src (version dev)
[dockerfile-opam.dev] synchronised (file:///src)
dockerfile-opam is now pinned to file:///src (version dev)
[dockerfile-cmd.dev] synchronised (file:///src)
dockerfile-cmd is now pinned to file:///src (version dev)
2026-04-03 14:26.10 ---> using "807c3e8fcb7092567699ed37791857a8c632df9f02ded06e4af05af54dc61d16" from cache


/src: (run (shell "echo '(lang dune 3.0)' > './dune-project'"))
2026-04-03 14:26.10 ---> using "1d2ab0c08377e013388625987fdd320d983d971acbd71af280e7d2e8274ec6ed" from cache


/src: (env DEPS "alcotest.1.9.1 astring.0.8.3 base.v0.12.2 base-bigarray.base base-bytes.base base-threads.base base-unix.base bos.0.2.1 cmdliner.1.3.0 conf-m4.1 dune.3.20.0 dune-configurator.2.5.1 dune-private-libs.2.5.1 fmt.0.9.0 fpath.0.7.3 jbuilder.1.0+beta20.1 logs.0.7.0 ocaml.4.08.1 ocaml-base-compiler.4.08.1 ocaml-compiler-libs.v0.11.0 ocaml-config.1 ocaml-migrate-parsetree.1.3.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.1 ocamlbuild.0.14.0 ocamlfind.1.8.0 ppx_derivers.1.0 ppx_sexp_conv.v0.12.0 ppxlib.0.8.1 re.1.7.2 result.1.5 rresult.0.7.0 sexplib0.v0.12.0 stdio.v0.12.0 stdlib-shims.0.1.0 topkg.1.0.8 uutf.1.0.3")


/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.5 --depext-only -y dockerfile.dev dockerfile-opam.dev dockerfile-cmd.dev $DEPS"))
+ /usr/bin/sudo "apt-get" "update"
- Get:1 http://deb.debian.org/debian trixie InRelease [140 kB]
- Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB]
- Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
- Get:4 http://deb.debian.org/debian trixie/main amd64 Packages [9671 kB]
- Get:5 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [119 kB]
- Fetched 10.0 MB in 2s (5920 kB/s)
- Reading package lists...
- 


<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[dockerfile.dev] synchronised (file:///src)
[dockerfile-cmd.dev] synchronised (file:///src)
[dockerfile-opam.dev] synchronised (file:///src)


[NOTE] Package ocaml-config is already installed (current version is 1).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.08.1).
[NOTE] Package ocaml is already installed (current version is 4.08.1).
[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-bigarray is already installed (current version is base).


The following system packages will first need to be installed:
m4


<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>


+ /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "m4"
- Selecting previously unselected package m4.
- (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
- (Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20623 files and directories currently installed.)
- Preparing to unpack .../archives/m4_1.4.19-8_amd64.deb ...
- Unpacking m4 (1.4.19-8) ...
- Setting up m4 (1.4.19-8) ...
# To update the current shell environment, run: eval $(opam env)
2026-04-03 14:26.10 ---> using "1692c08e131c498bdeb228806d6e6cd3a3ec58493e6b0ee72b949c4213f6d9ae" from cache


/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
[NOTE] Package ocaml-config is already installed (current version is 1).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.08.1).
[NOTE] Package ocaml is already installed (current version is 4.08.1).
[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-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 31 packages
- install alcotest                1.9.1
- install astring                 0.8.3
- install base                    v0.12.2
- install base-bytes              base
- install bos                     0.2.1
- install cmdliner                1.3.0
- install conf-m4                 1
- install dune                    3.20.0
- install dune-configurator       2.5.1
- install dune-private-libs       2.5.1
- install fmt                     0.9.0
- install fpath                   0.7.3
- install jbuilder                1.0+beta20.1 (deprecated)
- install logs                    0.7.0
- install ocaml-compiler-libs     v0.11.0
- install ocaml-migrate-parsetree 1.3.1 (deprecated)
- install ocaml-syntax-shims      1.0.0
- install ocaml-version           4.0.1
- install ocamlbuild              0.14.0
- install ocamlfind               1.8.0
- install ppx_derivers            1.0
- install ppx_sexp_conv           v0.12.0
- install ppxlib                  0.8.1
- install re                      1.7.2
- install result                  1.5
- install rresult                 0.7.0
- install sexplib0                v0.12.0
- install stdio                   v0.12.0
- install stdlib-shims            0.1.0
- install topkg                   1.0.8
- install uutf                    1.0.3


<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1  (cached)
-> retrieved astring.0.8.3  (cached)
-> retrieved base.v0.12.2  (cached)
-> retrieved bos.0.2.1  (cached)
-> retrieved cmdliner.1.3.0  (cached)
-> installed conf-m4.1
-> retrieved fmt.0.9.0  (cached)
-> retrieved fpath.0.7.3  (cached)
-> retrieved jbuilder.1.0+beta20.1  (cached)
-> retrieved logs.0.7.0  (cached)
-> retrieved dune-configurator.2.5.1, dune-private-libs.2.5.1  (cached)
-> retrieved dune.3.20.0  (cached)
-> retrieved ocaml-compiler-libs.v0.11.0  (cached)
-> retrieved ocaml-migrate-parsetree.1.3.1  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocaml-version.4.0.1  (cached)
-> retrieved ppx_derivers.1.0  (cached)
-> retrieved ppx_sexp_conv.v0.12.0  (cached)
-> retrieved ocamlbuild.0.14.0  (cached)
-> retrieved ocamlfind.1.8.0  (cached)
-> retrieved ppxlib.0.8.1  (cached)
-> installed cmdliner.1.3.0
-> retrieved re.1.7.2  (cached)
-> retrieved result.1.5  (cached)
-> retrieved rresult.0.7.0  (cached)
-> retrieved sexplib0.v0.12.0  (cached)
-> retrieved stdio.v0.12.0  (cached)
-> retrieved stdlib-shims.0.1.0  (cached)
-> retrieved uutf.1.0.3  (cached)
-> retrieved topkg.1.0.8  (cached)
-> installed ocamlfind.1.8.0
-> installed base-bytes.base
-> installed ocamlbuild.0.14.0
-> installed jbuilder.1.0+beta20.1
-> installed ppx_derivers.1.0
-> installed ocaml-compiler-libs.v0.11.0
-> installed re.1.7.2
-> installed topkg.1.0.8
-> installed rresult.0.7.0
-> installed uutf.1.0.3
-> installed fmt.0.9.0
-> installed astring.0.8.3
-> installed fpath.0.7.3
-> installed logs.0.7.0
-> installed bos.0.2.1
-> installed dune.3.20.0
-> installed result.1.5
-> installed stdlib-shims.0.1.0
-> installed ocaml-version.4.0.1
-> installed sexplib0.v0.12.0
-> installed ocaml-syntax-shims.1.0.0
-> installed alcotest.1.9.1
-> installed dune-private-libs.2.5.1
-> installed dune-configurator.2.5.1
-> installed ocaml-migrate-parsetree.1.3.1
-> installed base.v0.12.2
-> installed stdio.v0.12.0
-> installed ppxlib.0.8.1
-> installed ppx_sexp_conv.v0.12.0
Done.


<><> ocaml-migrate-parsetree.1.3.1 installed successfully <><><><><><><><><><><>
=> Note: This package is deprecated.


<><> jbuilder.1.0+beta20.1 installed successfully <><><><><><><><><><><><><><><>
=> Note: This package is deprecated.
# To update the current shell environment, run: eval $(opam env)
2026-04-03 14:26.10 ---> using "dcbf2da06edef50040885789059edc0311be2b424f6b56ce64737a3f5bbad87f" from cache


/src: (copy (src .) (dst /src))
2026-04-03 14:26.10 ---> saved as "554b5b353ffeb519ab3e5df352fa826d1ac5b3bfb8e0b0e61677f944308ef02a"


/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/test && ./dockerfile.exe)
Testing `test'.
This run has ID `OBTJ4ARG'.


[OK]          dockerfile          0   string_of_t.
[OK]          dockerfile          1   string_of_t.
[OK]          dockerfile          2   Format RUN heredocs.


Full test results in `/src/_build/default/test/_build/_tests/test'.
Test Successful in 0.000s. 3 tests run.
(cd _build/default/test-opam && ./dockerfile.exe)
Testing `test'.
This run has ID `TJWNFA5M'.


[OK]          dockerfile-opam          0   Distro.compare.


Full test results in `/src/_build/default/test-opam/_build/_tests/test'.
Test Successful in 0.000s. 1 test run.
2026-04-03 14:26.13 ---> saved as "22a4e08a3d989261b1334109fd60d92247851e3fe2585d0b5b4f1f5b7404f2c8"
Job succeeded
2026-04-03 14:26.13: Job succeeded