(for PR #28262)
2025-10-17 13:54.25: New job: build conf-bpftool.0.1.0, using opam dev
from https://github.com/ocaml/opam-repository.git#refs/pull/28262/head (27b93b8d254212c1249540d74f600850023faef7)
on alpine-3.22-ocaml-5.4/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/28262/head" && git reset --hard 27b93b8d
git fetch origin master
git merge --no-edit 5bf570252bd9fee71938b828ca0b86573c1e3355
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1
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 conf-bpftool.0.1.0 0.1.0
RUN opam reinstall conf-bpftool.0.1.0; \
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 "\"alpine-3.22\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'conf-bpftool.0.1.0' && 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 .
2025-10-17 13:54.25: Using cache hint "ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1-conf-bpftool.0.1.0-27b93b8d254212c1249540d74f600850023faef7"
2025-10-17 13:54.25: Using OBuilder spec:
((from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1)
(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 conf-bpftool.0.1.0 0.1.0"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall conf-bpftool.0.1.0;\
\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 \"\\\"alpine-3.22\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'conf-bpftool.0.1.0' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
)
2025-10-17 13:54.25: Connecting to build cluster…
2025-10-17 13:54.25: Waiting for resource in pool OCluster
2025-10-17 13:54.29: Waiting for worker…
2025-10-17 13:54.31: Got resource from pool OCluster
Building on odawa.caelum.ci.dev
All commits already cached
HEAD is now at 5bf570252b Merge pull request #28700 from drjdn/opam-publish-p5scm.0.5.0
Merge made by the 'ort' strategy.
packages/conf-bpftool/conf-bpftool.0.1.0/opam | 4 +++-
packages/libbpf/libbpf.0.1.0/opam | 11 ++++++-----
2 files changed, 9 insertions(+), 6 deletions(-)
(from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1)
Unable to find image 'ocaml/opam:alpine-3.22-ocaml-5.4@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1' locally
docker.io/ocaml/opam@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1: Pulling from ocaml/opam
2d35ebdb57d9: Already exists
4eef589852a3: Already exists
9bcbf19aa70e: Already exists
c27157cc8c0d: Already exists
8eb40fc9ec7b: Already exists
cf28fbda269d: Already exists
bdb05ad1bb03: Already exists
14b089059d7b: Already exists
8fba92877dbb: Already exists
b46b8c2b2e76: Already exists
c5fe84151a2d: Already exists
d69ebb2cea14: Already exists
8987930d7936: Already exists
07e0ebe0bb32: Already exists
a8a8cd8bbc43: Already exists
0eee052a54e0: Already exists
9d0f02e69e08: Already exists
4f4fb700ef54: Already exists
a90897db75ef: Already exists
678b7f997d9a: Already exists
55a17ca9d235: Already exists
b0fc237f6c26: Already exists
4a9f9668ab4a: Already exists
f4048786242d: Already exists
322480b4b1d3: Already exists
eda2d7da1b04: Already exists
83325a5b2b26: Already exists
09b67e1d956f: Already exists
2adafa4b73e4: Already exists
8e04b3ec100b: Already exists
7eac41d73ac6: Already exists
477769be07d7: Already exists
1121e0452bac: Already exists
a7433c286e2f: Already exists
d11ef3af080f: Already exists
595e38b8edfd: Already exists
f15368aa3240: Pulling fs layer
772205525b1c: Pulling fs layer
4b2a438a134b: Pulling fs layer
772205525b1c: Waiting
ce88c0406b4f: Pulling fs layer
30e6e4c7d9f2: Pulling fs layer
4b2a438a134b: Waiting
44ebb4aa5e2d: Pulling fs layer
30e6e4c7d9f2: Waiting
ce88c0406b4f: Waiting
44ebb4aa5e2d: Waiting
f15368aa3240: Download complete
f15368aa3240: Pull complete
772205525b1c: Download complete
772205525b1c: Pull complete
4b2a438a134b: Verifying Checksum
4b2a438a134b: Download complete
ce88c0406b4f: Verifying Checksum
ce88c0406b4f: Download complete
30e6e4c7d9f2: Download complete
4b2a438a134b: Pull complete
ce88c0406b4f: Pull complete
30e6e4c7d9f2: Pull complete
44ebb4aa5e2d: Download complete
44ebb4aa5e2d: Pull complete
Digest: sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1
Status: Downloaded newer image for ocaml/opam@sha256:27e2909a2a30c05b9fb5696467f60c5bf3c31b41ea2e3088cc8d9cabbdf2f1a1
2025-10-17 13:58.14 ---> saved as "e5ab524290e505ed5240c7136106572c90f8627d7370b4a892c6d0542a73b860"
/: (user (uid 1000) (gid 1000))
/: (workdir /home/opam)
/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2025-10-17 13:58.14 ---> saved as "7d365624eddcbfa83d258a8cab86a63cd84143fc1112368284a411590238dc65"
/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
2025-10-17 13:58.35 ---> saved as "d977b4eb60008df5ebe8429b48ce8634ab36ff802bcf0b08c1db8f1805f9ca87"
/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.4.1
# self-upgrade no
# system arch=x86_64 os=linux os-distribution=alpine os-version=3.22.2
# solver builtin-0install
# install-criteria -changed,-count[avoid-version,solution]
# upgrade-criteria -count[avoid-version,solution]
# jobs 255
# repositories 1 (version-controlled)
# pinned 1 (version)
# current-switch 5.4
# invariant ["ocaml-base-compiler" {>= "5.4.0"}]
# compiler-packages ocaml-base-compiler.5.4.0, ocaml-compiler.5.4.0, ocaml-options-vanilla.1
# ocaml:native true
# ocaml:native-tools true
# ocaml:native-dynlink true
# ocaml:stubsdir /home/opam/.opam/5.4/lib/ocaml/stublibs:/home/opam/.opam/5.4/lib/ocaml
# ocaml:preinstalled false
# ocaml:compiler 5.4.0
2025-10-17 13:58.36 ---> saved as "36508b08a4fa9c6e0e0c7fdc7ebef147b1668b889ab429a0747f82ddccaac5ee"
/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/"))
2025-10-17 13:58.47 ---> saved as "20019c54fe7ca67b269ad246181d211bf1a070fd6ede2c55250795a7ea596392"
/home/opam: (copy (src .) (dst opam-repository/))
2025-10-17 13:58.55 ---> saved as "6a9893abfe0103c3b02c025d255a86f5db474d88ab12cc2000c7a8b7c7093f94"
/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2025-10-17 13:59.16 ---> saved as "791053718abe0b4d7b5934c9792b756fc93c1244524a58ad8cedadd1c38b4b30"
/home/opam: (run (network host)
(shell "opam update --depexts || true"))
+ /usr/bin/sudo "apk" "update"
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/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.22.2-46-gf44c8d388fc [https://dl-cdn.alpinelinux.org/alpine/v3.22/main]
- v3.22.2-49-g5ccb1eb14d7 [https://dl-cdn.alpinelinux.org/alpine/v3.22/community]
- v20251016-78-gba3ddb9481d [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v20251016-77-gde1f16ce62c [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v20251016-51-gce044c2c556 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 59598 distinct packages available
2025-10-17 13:59.19 ---> saved as "234b46f4f6a2b3191797990cb229efd3f02663ac063b7788ee8c7607ffa7c9f8"
/home/opam: (run (shell "opam pin add -k version -yn conf-bpftool.0.1.0 0.1.0"))
conf-bpftool is now pinned to version 0.1.0
2025-10-17 13:59.19 ---> saved as "3f6168bcde1064ac66538ce6de5f3627925d71bba89db73975de18713e5203b6"
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall conf-bpftool.0.1.0;\
\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 \"\\\"alpine-3.22\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'conf-bpftool.0.1.0' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
conf-bpftool.0.1.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 1 package
- install conf-bpftool 0.1.0 (pinned)
The following system packages will first need to be installed:
bpftool
<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
opam believes some required external dependencies are missing. opam can:
> 1. Run apk to install them (may need root/sudo access)
2. Display the recommended apk command and wait while you run it manually (e.g. in another terminal)
3. Continue anyway, and, upon success, permanently register that this external dependency is present, but not detectable
4. Abort the installation
[1/2/3/4] 1
+ /usr/bin/sudo "apk" "add" "bpftool"
- (1/17) Installing libtraceevent (1.8.4-r0)
- (2/17) Installing libtraceevent-plugins (1.8.4-r0)
- (3/17) Installing libxml2 (2.13.9-r0)
- (4/17) Installing llvm20-libs (20.1.8-r0)
- (5/17) Installing libelf (0.193-r0)
- (6/17) Installing musl-fts (1.2.7-r6)
- (7/17) Installing libdw (0.193-r0)
- (8/17) Installing numactl (2.0.18-r0)
- (9/17) Installing slang (2.3.3-r3)
- (10/17) Installing perf (6.15.0-r0)
- (11/17) Installing libintl (0.24.1-r0)
- (12/17) Installing libnl3 (3.11.0-r0)
- (13/17) Installing pciutils-libs (3.13.0-r1)
- (14/17) Installing cpupower (6.15.0-r0)
- (15/17) Installing linux-tools-gpio (6.15.0-r0)
- (16/17) Installing linux-tools-iio (6.15.0-r0)
- (17/17) Installing bpftool (6.15.0-r0)
- Executing busybox-1.37.0-r19.trigger
- OK: 494 MiB in 120 packages
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> installed conf-bpftool.0.1.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-10-17 13:59.38 ---> saved as "1cecbd22a78c206fe622c80896b8faef9d2d6005206c19b34a0e6ff4b1ff3c0b"
Job succeeded
2025-10-17 13:59.44: Job succeeded