(for PR #28222)

2025-08-21 14:13.41: New job: build ocurl.0.7.6, using opam 2.3
                              from https://github.com/ocaml/opam-repository.git#refs/pull/28222/head (a14b2680809606d7e55ae7ed410b73438cb77bd0)
                              on debian-12-ocaml-4.14/s390x

To reproduce locally:

cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/28222/head" && git reset --hard a14b2680
git fetch origin master
git merge --no-edit 4bae7ec4df49df4454ea492c8d7a1196aeae04e0
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-12-ocaml-4.14@sha256:00700e34da04c9ffa569fede2a49e624b108a5b4077e074125e658eecabce6f8
USER 1000:1000
WORKDIR /home/opam
RUN sudo ln -f /usr/bin/opam-2.3 /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 ocurl.0.7.6 0.7.6
RUN opam reinstall ocurl.0.7.6; \
    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 "\"debian-12\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'ocurl.0.7.6' && 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-08-21 14:13.41: Using cache hint "ocaml/opam:debian-12-ocaml-4.14@sha256:00700e34da04c9ffa569fede2a49e624b108a5b4077e074125e658eecabce6f8-ocurl.0.7.6-a14b2680809606d7e55ae7ed410b73438cb77bd0"
2025-08-21 14:13.41: Using OBuilder spec:
((from ocaml/opam:debian-12-ocaml-4.14@sha256:00700e34da04c9ffa569fede2a49e624b108a5b4077e074125e658eecabce6f8)
 (user (uid 1000) (gid 1000))
 (workdir /home/opam)
 (run (shell "sudo ln -f /usr/bin/opam-2.3 /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 ocurl.0.7.6 0.7.6"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall ocurl.0.7.6;\
             \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 \"\\\"debian-12\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'ocurl.0.7.6' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2025-08-21 14:13.41: Waiting for resource in pool OCluster
2025-08-21 14:13.41: Waiting for worker…
2025-08-21 14:32.57: Got resource from pool OCluster
Building on s390x-worker-01.marist.ci.dev
All commits already cached
Updating files:  91% (16568/18065)
Updating files:  92% (16620/18065)
Updating files:  93% (16801/18065)
Updating files:  94% (16982/18065)
Updating files:  95% (17162/18065)
Updating files:  96% (17343/18065)
Updating files:  97% (17524/18065)
Updating files:  98% (17704/18065)
Updating files:  99% (17885/18065)
Updating files: 100% (18065/18065)
Updating files: 100% (18065/18065), done.
HEAD is now at 4bae7ec4df Merge pull request #28375 from jmid/opam-compiler-re-bounds
Merge made by the 'ort' strategy.
 packages/curl_lwt/curl_lwt.0.10.0/opam            |  2 +-
 packages/lwt/lwt.6.0.0~alpha01/opam               | 69 +++++++++++++++++++++++
 packages/lwt_direct/lwt_direct.6.0.0~alpha01/opam | 44 +++++++++++++++
 packages/lwt_glib/lwt_glib.1.0.1/opam             |  2 +-
 packages/lwt_glib/lwt_glib.1.1.0/opam             |  2 +-
 packages/lwt_glib/lwt_glib.1.1.1/opam             |  2 +-
 packages/lwt_log/lwt_log.1.1.0/opam               |  2 +-
 packages/lwt_log/lwt_log.1.1.1/opam               |  2 +-
 packages/lwt_log/lwt_log.1.1.2/opam               |  2 +-
 packages/ocurl/ocurl.0.7.6/opam                   |  1 +
 packages/ocurl/ocurl.0.7.7/opam                   |  1 +
 packages/ocurl/ocurl.0.7.8/opam                   |  1 +
 packages/ocurl/ocurl.0.7.9/opam                   |  1 +
 packages/ocurl/ocurl.0.8.1/opam                   |  1 +
 packages/ocurl/ocurl.0.8.2/opam                   |  1 +
 packages/ocurl/ocurl.0.9.0/opam                   |  1 +
 packages/ocurl/ocurl.0.9.1/opam                   |  1 +
 packages/ocurl/ocurl.0.9.2/opam                   |  1 +
 18 files changed, 129 insertions(+), 7 deletions(-)
 create mode 100644 packages/lwt/lwt.6.0.0~alpha01/opam
 create mode 100644 packages/lwt_direct/lwt_direct.6.0.0~alpha01/opam

(from ocaml/opam:debian-12-ocaml-4.14@sha256:00700e34da04c9ffa569fede2a49e624b108a5b4077e074125e658eecabce6f8)
Unable to find image 'ocaml/opam:debian-12-ocaml-4.14@sha256:00700e34da04c9ffa569fede2a49e624b108a5b4077e074125e658eecabce6f8' locally
docker.io/ocaml/opam@sha256:00700e34da04c9ffa569fede2a49e624b108a5b4077e074125e658eecabce6f8: Pulling from ocaml/opam
635b31fd21bf: Already exists
708132fca52f: Already exists
93225017ea3f: Already exists
c420d3bc4fb5: Already exists
9367383cc35b: Already exists
fc14822e3359: Already exists
19812ff79b68: Already exists
5e6f8ac50329: Already exists
397b528d22fa: Already exists
58b0f713b1a9: Already exists
2a7d723ad212: Already exists
c05b36405d70: Already exists
82b376d2f34d: Already exists
b2c074e839b3: Already exists
90df32b44373: Already exists
af44f9231e6b: Already exists
259ebd387066: Already exists
10d778900660: Already exists
56954e7cd04d: Already exists
5a261332e87e: Already exists
6f4fe000dd8c: Already exists
4f4fb700ef54: Already exists
a7f8593bcd24: Already exists
aa08925a2049: Already exists
470c2d4f1696: Already exists
e85194bbae7b: Already exists
2f599c8fe536: Already exists
d8f2dabbd020: Already exists
6efd020fff94: Already exists
ea1a39db5b7a: Already exists
31b8c08b42dd: Already exists
35975d03f973: Already exists
5acb3cf496c9: Already exists
5bc03ae7772a: Already exists
7fdf850c8124: Already exists
c029af53bec9: Already exists
dfc0e4f039e4: Already exists
b2b1f5311226: Already exists
bbbc3ce9798c: Already exists
2dda26aa2634: Already exists
5977b511504e: Pulling fs layer
322393cbebd0: Pulling fs layer
8b8b6f8b6f4d: Pulling fs layer
1adaeda762ff: Pulling fs layer
1adaeda762ff: Waiting
322393cbebd0: Verifying Checksum
322393cbebd0: Download complete
8b8b6f8b6f4d: Verifying Checksum
8b8b6f8b6f4d: Download complete
1adaeda762ff: Verifying Checksum
1adaeda762ff: Download complete
5977b511504e: Verifying Checksum
5977b511504e: Download complete
5977b511504e: Pull complete
322393cbebd0: Pull complete
8b8b6f8b6f4d: Pull complete
1adaeda762ff: Pull complete
Digest: sha256:00700e34da04c9ffa569fede2a49e624b108a5b4077e074125e658eecabce6f8
Status: Downloaded newer image for ocaml/opam@sha256:00700e34da04c9ffa569fede2a49e624b108a5b4077e074125e658eecabce6f8
2025-08-21 14:32.59 ---> using "29ef6dee274bb664d7e7a631cdebfa07ebf997f0a4296e107ae2788322b3ea86" from cache

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

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-2.3 /usr/bin/opam"))
2025-08-21 14:32.59 ---> using "0162087ec341ed2d363e05b5444e02c8e3354cf60077cbc279c6ba4eb71b41c4" 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 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-08-21 14:32.59 ---> using "723d7f56e7ac6e5758d012e572350af821670ccc2b367f316faaeac0e5d6e5a0" 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.3.0 (35acd0c5abc5e66cdbd5be16ba77aa6c33a4c724)
# self-upgrade         no
# system               arch=s390x os=linux os-distribution=debian os-version=12
# solver               builtin-0install
# install-criteria     -changed,-count[avoid-version,solution]
# upgrade-criteria     -count[avoid-version,solution]
# jobs                 3
# 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
2025-08-21 14:32.59 ---> using "a57debe045ec3f24920646871c0855f3a796af63a2b10082dd1b38fcfc9ce995" 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/"))
2025-08-21 14:32.59 ---> using "f5a371363e49e993482cd92612f6fc5e9538dcb92b9cca1949436c802918e10f" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2025-08-21 14:33.00 ---> using "21dcbe1470b09b2589cec74bf6d174f2d4d7c2b384d517f26085f3a651de9992" from cache

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2025-08-21 14:33.00 ---> using "e1b738d6b4096938c0fd9f93353c1f9cfaa316aa796f3b03834d7929a255ec8a" from cache

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian bookworm InRelease
- Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
- Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
- Get:4 http://deb.debian.org/debian-security bookworm-security/main s390x Packages [243 kB]
- Fetched 346 kB in 0s (1117 kB/s)
- Reading package lists...
- 
2025-08-21 14:33.00 ---> using "1eee09232eb874cc74a36af01cbdb16c415da71b38449ec8c0922844aa78d0c2" from cache

/home/opam: (run (shell "opam pin add -k version -yn ocurl.0.7.6 0.7.6"))
ocurl is now pinned to version 0.7.6
2025-08-21 14:33.07 ---> saved as "d45842d1ebd2d961af3c52782d279f804d98741518103e2d6f7b29a18f1c63d3"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall ocurl.0.7.6;\
                        \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 \"\\\"debian-12\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'ocurl.0.7.6' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
ocurl.0.7.6 is not installed. Install it? [y/n] y
The following actions will be performed:
=== install 3 packages
  - install conf-libcurl 2              [required by ocurl]
  - install ocamlfind    1.9.8          [required by ocurl]
  - install ocurl        0.7.6 (pinned)

The following system packages will first need to be installed:
    libcurl4-gnutls-dev

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

opam believes some required external dependencies are missing. opam can:
> 1. Run apt-get to install them (may need root/sudo access)
  2. Display the recommended apt-get 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 "apt-get" "install" "-qq" "-yy" "libcurl4-gnutls-dev"
- debconf: delaying package configuration, since apt-utils is not installed
- Selecting previously unselected package libcurl4-gnutls-dev:s390x.
- (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 ... 18520 files and directories currently installed.)
- Preparing to unpack .../libcurl4-gnutls-dev_7.88.1-10+deb12u12_s390x.deb ...
- Unpacking libcurl4-gnutls-dev:s390x (7.88.1-10+deb12u12) ...
- Setting up libcurl4-gnutls-dev:s390x (7.88.1-10+deb12u12) ...

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved ocamlfind.1.9.8  (cached)
-> installed conf-libcurl.2
-> retrieved ocurl.0.7.6  (cached)
-> installed ocamlfind.1.9.8
-> installed ocurl.0.7.6
Done.
# To update the current shell environment, run: eval $(opam env)
2025-08-21 14:33.42 ---> saved as "714f4fbfc18f4e0629be7191d2109746059c84356d817f560f7c74a3ad7e9dd8"
Job succeeded
2025-08-21 14:33.53: Job succeeded