(for PR #29211)
2026-01-18 13:43.30: New job: build menhir.20260112, using opam dev
from https://github.com/ocaml/opam-repository.git#refs/pull/29211/head (40f2d815046034974151fd6cb87d492d7533b91e)
on centos-9-ocaml-4.14/amd64
To reproduce locally:
cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/29211/head" && git reset --hard 40f2d815
git fetch origin master
git merge --no-edit 5a5103c1c342a572f3174f77c2bf2a3883cd4a69
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:centos-9-ocaml-4.14@sha256:bdec5f4f50931078b18f53bc6b99b1f520b9cd6bce0551d250c5f1cbad66dd6b
USER 1000:1000
WORKDIR /home/opam
RUN sudo ln -f /usr/bin/opam-dev /usr/bin/opam
RUN opam init --reinit -ni
RUN opam option solver=builtin-0install && opam config report
ENV OPAMDOWNLOADJOBS="1"
ENV OPAMERRLOGLEN="0"
ENV OPAMPRECISETRACKING="1"
ENV CI="true"
ENV OPAM_REPO_CI="true"
RUN rm -rf opam-repository/
COPY --chown=1000:1000 . opam-repository/
RUN opam repository set-url --strict default opam-repository/
RUN opam update --depexts || true
RUN opam pin add -k version -yn menhir.20260112 20260112
RUN opam reinstall menhir.20260112; \
res=$?; \
test "$res" != 31 && exit "$res"; \
export OPAMCLI=2.0; \
build_dir=$(opam var prefix)/.opam-switch/build; \
failed=$(ls "$build_dir"); \
partial_fails=""; \
for pkg in $failed; do \
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"centos-9\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'menhir.20260112' && partial_fails="$partial_fails $pkg"; \
done; \
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
exit 1
END-OF-DOCKERFILE
docker build -f ../Dockerfile .
2026-01-18 13:43.30: Using cache hint "ocaml/opam:centos-9-ocaml-4.14@sha256:bdec5f4f50931078b18f53bc6b99b1f520b9cd6bce0551d250c5f1cbad66dd6b-menhir.20260112-40f2d815046034974151fd6cb87d492d7533b91e"
2026-01-18 13:43.30: Using OBuilder spec:
((from ocaml/opam:centos-9-ocaml-4.14@sha256:bdec5f4f50931078b18f53bc6b99b1f520b9cd6bce0551d250c5f1cbad66dd6b)
(user (uid 1000) (gid 1000))
(workdir /home/opam)
(run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
(run (network host)
(shell "opam init --reinit --config .opamrc-sandbox -ni"))
(run (shell "opam option solver=builtin-0install && opam config report"))
(env OPAMDOWNLOADJOBS 1)
(env OPAMERRLOGLEN 0)
(env OPAMPRECISETRACKING 1)
(env CI true)
(env OPAM_REPO_CI true)
(run (shell "rm -rf opam-repository/"))
(copy (src .) (dst opam-repository/))
(run (shell "opam repository set-url --strict default opam-repository/"))
(run (network host)
(shell "opam update --depexts || true"))
(run (shell "opam pin add -k version -yn menhir.20260112 20260112"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall menhir.20260112;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"centos-9\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'menhir.20260112' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
)
2026-01-18 13:43.30: Waiting for resource in pool OCluster
2026-01-18 13:45.55: Waiting for worker…
2026-01-18 13:48.35: Got resource from pool OCluster
Building on laodoke.caelum.ci.dev
All commits already cached
Updating files: 95% (18417/19232)
Updating files: 96% (18463/19232)
Updating files: 97% (18656/19232)
Updating files: 98% (18848/19232)
Updating files: 99% (19040/19232)
Updating files: 100% (19232/19232)
Updating files: 100% (19232/19232), done.
HEAD is now at 5a5103c1c3 Merge pull request #29240 from sanette/opam-publish-ufind.0.2.0
Updating 5a5103c1c3..40f2d81504
Fast-forward
packages/menhir/menhir.20260112/opam | 32 ++++++++++++++++++++++++++++++
packages/menhirCST/menhirCST.20260112/opam | 30 ++++++++++++++++++++++++++++
packages/menhirGLR/menhirGLR.20260112/opam | 30 ++++++++++++++++++++++++++++
packages/menhirLib/menhirLib.20260112/opam | 31 +++++++++++++++++++++++++++++
packages/menhirSdk/menhirSdk.20260112/opam | 31 +++++++++++++++++++++++++++++
5 files changed, 154 insertions(+)
create mode 100644 packages/menhir/menhir.20260112/opam
create mode 100644 packages/menhirCST/menhirCST.20260112/opam
create mode 100644 packages/menhirGLR/menhirGLR.20260112/opam
create mode 100644 packages/menhirLib/menhirLib.20260112/opam
create mode 100644 packages/menhirSdk/menhirSdk.20260112/opam
(from ocaml/opam:centos-9-ocaml-4.14@sha256:bdec5f4f50931078b18f53bc6b99b1f520b9cd6bce0551d250c5f1cbad66dd6b)
Unable to find image 'ocaml/opam:centos-9-ocaml-4.14@sha256:bdec5f4f50931078b18f53bc6b99b1f520b9cd6bce0551d250c5f1cbad66dd6b' locally
docker.io/ocaml/opam@sha256:bdec5f4f50931078b18f53bc6b99b1f520b9cd6bce0551d250c5f1cbad66dd6b: Pulling from ocaml/opam
a7bf21bb3fc2: Already exists
16f6f8c6e3a9: Already exists
4108572308f8: Already exists
9d50a4c3cb7d: Already exists
237224eddd1a: Already exists
2b05bb8588f5: Already exists
ae7fe1736bbd: Already exists
929e36856464: Already exists
f351e37bd54a: Already exists
33e68e3fb8ce: Already exists
7919cd8df56a: Already exists
3f374e6d2d50: Already exists
5a49de7187a6: Already exists
85dcb9b4730e: Already exists
ffecbd3cb69b: Already exists
4e1e2c48c252: Already exists
b78937616fd9: Already exists
f99e1504aebb: Already exists
f99e1504aebb: Already exists
f7e7ee278091: Already exists
3edb1adbe596: Already exists
2c99bd1ce619: Already exists
8543377e5c3c: Already exists
4f4fb700ef54: Already exists
de4495164c0d: Already exists
0571e104fb9c: Already exists
be4b5b8ca5e2: Already exists
e9e12718b868: Already exists
b80376005c33: Already exists
bb759989f6ae: Already exists
623eaff69fa1: Already exists
8e0a50994c3f: Already exists
9ea87668a168: Already exists
dbe20325da66: Already exists
a9de00b9ae08: Already exists
2aee8f46ab6f: Already exists
98606b5d7bf4: Already exists
2d133f7440be: Already exists
712b8d27da19: Already exists
52b062752822: Already exists
c2f673f0dd7d: Already exists
ef5aa7edf6fd: Already exists
be1b55798760: Pulling fs layer
d8826e2eab7f: Pulling fs layer
2ef69d31ddd0: Pulling fs layer
391e3c2ed359: Pulling fs layer
391e3c2ed359: Waiting
2ef69d31ddd0: Verifying Checksum
2ef69d31ddd0: Download complete
d8826e2eab7f: Download complete
391e3c2ed359: Verifying Checksum
391e3c2ed359: Download complete
be1b55798760: Verifying Checksum
be1b55798760: Download complete
be1b55798760: Pull complete
d8826e2eab7f: Pull complete
2ef69d31ddd0: Pull complete
391e3c2ed359: Pull complete
Digest: sha256:bdec5f4f50931078b18f53bc6b99b1f520b9cd6bce0551d250c5f1cbad66dd6b
Status: Downloaded newer image for ocaml/opam@sha256:bdec5f4f50931078b18f53bc6b99b1f520b9cd6bce0551d250c5f1cbad66dd6b
2026-01-18 13:50.03 ---> using "4a11857eb0836a617ebb06a3276895d6475222506800f3dbf2a2076d23b21488" from cache
/: (user (uid 1000) (gid 1000))
/: (workdir /home/opam)
/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2026-01-18 13:50.03 ---> using "b1212123fa7ff6da284d1be29adbf3efe22ff49b8cbe843fb786489e53e8fed6" from cache
/home/opam: (run (network host)
(shell "opam init --reinit --config .opamrc-sandbox -ni"))
Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally 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-01-18 13:50.03 ---> using "0ece5a3f03b76f6103fe406c912a962816a65227a97cca57174fb690c613b4df" from cache
/home/opam: (run (shell "opam option solver=builtin-0install && opam config report"))
Set to 'builtin-0install' the field solver in global configuration
# opam config report
# opam-version 2.5.0
# self-upgrade no
# system arch=x86_64 os=linux os-distribution=centos os-version=9
# solver builtin-0install
# install-criteria -changed,-count[avoid-version,solution]
# upgrade-criteria -count[avoid-version,solution]
# jobs 71
# repositories 1 (version-controlled)
# pinned 1 (version)
# current-switch 4.14
# invariant ["ocaml-base-compiler" {= "4.14.2"}]
# compiler-packages ocaml-base-compiler.4.14.2, ocaml-options-vanilla.1
# ocaml:native true
# ocaml:native-tools true
# ocaml:native-dynlink true
# ocaml:stubsdir /home/opam/.opam/4.14/lib/ocaml/stublibs:/home/opam/.opam/4.14/lib/ocaml
# ocaml:preinstalled false
# ocaml:compiler 4.14.2
2026-01-18 13:50.03 ---> using "3ec40c22e2c1c9d0eb0910d8eae39efaae6749ef690b1a3acef632065bd2c5ff" from cache
/home/opam: (env OPAMDOWNLOADJOBS 1)
/home/opam: (env OPAMERRLOGLEN 0)
/home/opam: (env OPAMPRECISETRACKING 1)
/home/opam: (env CI true)
/home/opam: (env OPAM_REPO_CI true)
/home/opam: (run (shell "rm -rf opam-repository/"))
2026-01-18 13:50.03 ---> using "f280a6bfa48c1f4f2ed18d6007e10b3a1a950a3dc808a73a2aa73879782da4ef" from cache
/home/opam: (copy (src .) (dst opam-repository/))
2026-01-18 13:50.12 ---> saved as "42c25bb7baac603b42d1f99511c574dd8d9bbe9fd9535e1032541eae7adc5372"
/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-01-18 13:50.34 ---> saved as "53c872358aa427d405ceabc93847248d34cb45738d51dfd775de4c901c4dadeb"
/home/opam: (run (network host)
(shell "opam update --depexts || true"))
+ /usr/bin/sudo "yum" "makecache"
- CentOS Stream 9 - BaseOS 2.8 kB/s | 14 kB 00:05
- CentOS Stream 9 - BaseOS 851 kB/s | 8.9 MB 00:10
- CentOS Stream 9 - AppStream 44 kB/s | 15 kB 00:00
- CentOS Stream 9 - AppStream 1.2 MB/s | 26 MB 00:22
- CentOS Stream 9 - CRB 17 kB/s | 14 kB 00:00
- CentOS Stream 9 - CRB 2.1 MB/s | 7.6 MB 00:03
- CentOS Stream 9 - Extras packages 71 kB/s | 16 kB 00:00
- Metadata cache created.
2026-01-18 13:51.32 ---> saved as "77c1e4ddbf672e6d79346f1ac27b4aeb0977b58c0162378d081dd9e17d407f6e"
/home/opam: (run (shell "opam pin add -k version -yn menhir.20260112 20260112"))
menhir is now pinned to version 20260112
2026-01-18 13:51.34 ---> saved as "844f0fc2ceadd91492f3c3b1ba1d95b5790e044d1729230f90fb9bf1d7ab7314"
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall menhir.20260112;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"centos-9\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'menhir.20260112' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
menhir.20260112 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 6 packages
- install dune 3.21.0 [required by menhir]
- install menhir 20260112 (pinned)
- install menhirCST 20260112 [required by menhir]
- install menhirGLR 20260112 [required by menhir]
- install menhirLib 20260112 [required by menhir]
- install menhirSdk 20260112 [required by menhir]
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.21.0 (cached)
-> retrieved menhir.20260112, menhirCST.20260112, menhirGLR.20260112, menhirLib.20260112, menhirSdk.20260112 (cached)
-> installed dune.3.21.0
-> installed menhirCST.20260112
-> installed menhirGLR.20260112
-> installed menhirLib.20260112
-> installed menhirSdk.20260112
-> installed menhir.20260112
Done.
# To update the current shell environment, run: eval $(opam env)
2026-01-18 13:52.18 ---> saved as "71894dbc4250f6c3b4c729fd4acdd79246662e44d97052b84022d1cf5f68f260"
Job succeeded
2026-01-18 13:52.25: Job succeeded