(for PR #29350)
2026-02-07 08:26.59: New job: build testcontainers-localstack.0.1.0, using opam dev
from https://github.com/ocaml/opam-repository.git#refs/pull/29350/head (3fd8eac38fb2e07d304ff0ea935622799c447089)
on macos-homebrew-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/29350/head" && git reset --hard 3fd8eac3
git fetch origin master
git merge --no-edit 340ee6fd1ff10d0fce25e21ba1caca9ed1cfec68
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM macos-homebrew-ocaml-4.14
USER 1000:1000
RUN ln -f ~/local/bin/opam-dev ~/local/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 -k local --strict default opam-repository/
RUN opam update --depexts || true
RUN opam pin add -k version -yn testcontainers-localstack.0.1.0 0.1.0
RUN opam reinstall testcontainers-localstack.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 "\"macos-homebrew\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'testcontainers-localstack.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 .
2026-02-07 08:26.59: Using cache hint "macos-homebrew-ocaml-4.14-testcontainers-localstack.0.1.0-3fd8eac38fb2e07d304ff0ea935622799c447089"
2026-02-07 08:26.59: Using OBuilder spec:
((from macos-homebrew-ocaml-4.14)
(user (uid 1000) (gid 1000))
(run (shell "ln -f ~/local/bin/opam-dev ~/local/bin/opam"))
(run (network host)
(shell "opam init --reinit -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 -k local --strict default opam-repository/"))
(run (network host)
(shell "opam update --depexts || true"))
(run (shell "opam pin add -k version -yn testcontainers-localstack.0.1.0 0.1.0"))
(run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
(network host)
(shell "opam reinstall testcontainers-localstack.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 \"\\\"macos-homebrew\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'testcontainers-localstack.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"))
)
2026-02-07 08:26.59: Waiting for resource in pool OCluster
2026-02-07 08:27.00: Waiting for worker…
2026-02-07 08:40.34: Got resource from pool OCluster
Building on i7-worker-01
All commits already cached
Updating files: 32% (6212/19362)
Updating files: 33% (6390/19362)
Updating files: 34% (6584/19362)
Updating files: 35% (6777/19362)
Updating files: 36% (6971/19362)
Updating files: 37% (7164/19362)
Updating files: 38% (7358/19362)
Updating files: 39% (7552/19362)
Updating files: 40% (7745/19362)
Updating files: 41% (7939/19362)
Updating files: 42% (8133/19362)
Updating files: 43% (8326/19362)
Updating files: 44% (8520/19362)
Updating files: 45% (8713/19362)
Updating files: 46% (8907/19362)
Updating files: 47% (9101/19362)
Updating files: 48% (9294/19362)
Updating files: 49% (9488/19362)
Updating files: 50% (9681/19362)
Updating files: 51% (9875/19362)
Updating files: 52% (10069/19362)
Updating files: 53% (10262/19362)
Updating files: 54% (10456/19362)
Updating files: 55% (10650/19362)
Updating files: 56% (10843/19362)
Updating files: 57% (11037/19362)
Updating files: 58% (11230/19362)
Updating files: 59% (11424/19362)
Updating files: 59% (11429/19362)
Updating files: 60% (11618/19362)
Updating files: 61% (11811/19362)
Updating files: 62% (12005/19362)
Updating files: 63% (12199/19362)
Updating files: 64% (12392/19362)
Updating files: 65% (12586/19362)
Updating files: 66% (12779/19362)
Updating files: 67% (12973/19362)
Updating files: 68% (13167/19362)
Updating files: 69% (13360/19362)
Updating files: 70% (13554/19362)
Updating files: 71% (13748/19362)
Updating files: 72% (13941/19362)
Updating files: 73% (14135/19362)
Updating files: 74% (14328/19362)
Updating files: 75% (14522/19362)
Updating files: 76% (14716/19362)
Updating files: 77% (14909/19362)
Updating files: 78% (15103/19362)
Updating files: 79% (15296/19362)
Updating files: 80% (15490/19362)
Updating files: 81% (15684/19362)
Updating files: 82% (15877/19362)
Updating files: 83% (16071/19362)
Updating files: 84% (16265/19362)
Updating files: 85% (16458/19362)
Updating files: 86% (16652/19362)
Updating files: 87% (16845/19362)
Updating files: 87% (16933/19362)
Updating files: 88% (17039/19362)
Updating files: 89% (17233/19362)
Updating files: 90% (17426/19362)
Updating files: 91% (17620/19362)
Updating files: 92% (17814/19362)
Updating files: 93% (18007/19362)
Updating files: 94% (18201/19362)
Updating files: 95% (18394/19362)
Updating files: 96% (18588/19362)
Updating files: 97% (18782/19362)
Updating files: 98% (18975/19362)
Updating files: 99% (19169/19362)
Updating files: 100% (19362/19362)
Updating files: 100% (19362/19362), done.
HEAD is now at 340ee6fd1f Merge pull request #29341 from Halbaroth/release-alt-ergo-free-2.4.3
Updating 340ee6fd1f..3fd8eac38f
Fast-forward
.../testcontainers-elasticsearch.0.1.0/opam | 39 ++++++++++++++++
.../testcontainers-kafka.0.1.0/opam | 39 ++++++++++++++++
.../testcontainers-localstack.0.1.0/opam | 40 +++++++++++++++++
.../testcontainers-memcached.0.1.0/opam | 39 ++++++++++++++++
.../testcontainers-mockserver.0.1.0/opam | 40 +++++++++++++++++
.../testcontainers-mongo.0.1.0/opam | 39 ++++++++++++++++
.../testcontainers-mysql.0.1.0/opam | 39 ++++++++++++++++
.../testcontainers-postgres.0.1.0/opam | 39 ++++++++++++++++
.../testcontainers-rabbitmq.0.1.0/opam | 39 ++++++++++++++++
.../testcontainers-redis.0.1.0/opam | 39 ++++++++++++++++
packages/testcontainers/testcontainers.0.1.0/opam | 52 ++++++++++++++++++++++
11 files changed, 444 insertions(+)
create mode 100644 packages/testcontainers-elasticsearch/testcontainers-elasticsearch.0.1.0/opam
create mode 100644 packages/testcontainers-kafka/testcontainers-kafka.0.1.0/opam
create mode 100644 packages/testcontainers-localstack/testcontainers-localstack.0.1.0/opam
create mode 100644 packages/testcontainers-memcached/testcontainers-memcached.0.1.0/opam
create mode 100644 packages/testcontainers-mockserver/testcontainers-mockserver.0.1.0/opam
create mode 100644 packages/testcontainers-mongo/testcontainers-mongo.0.1.0/opam
create mode 100644 packages/testcontainers-mysql/testcontainers-mysql.0.1.0/opam
create mode 100644 packages/testcontainers-postgres/testcontainers-postgres.0.1.0/opam
create mode 100644 packages/testcontainers-rabbitmq/testcontainers-rabbitmq.0.1.0/opam
create mode 100644 packages/testcontainers-redis/testcontainers-redis.0.1.0/opam
create mode 100644 packages/testcontainers/testcontainers.0.1.0/opam
(from macos-homebrew-ocaml-4.14)
2026-02-07 08:40.37 ---> using "0c60f117aee57abea8364cb033d47bb1d63ff0f68e5ee97378e032498e8442af" from cache
/: (user (uid 1000) (gid 1000))
/: (run (shell "ln -f ~/local/bin/opam-dev ~/local/bin/opam"))
2026-02-07 08:40.37 ---> using "f20a31eccb94af52fa2a3ef86b723bc6460bac3d8a92b8861915540c2498d20a" from cache
/: (run (network host)
(shell "opam init --reinit -ni"))
No configuration file found, using 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 /Users/mac1000/.opam from version 2.1 to version 2.2, which can't be reverted.
You may want to back it up before going further.
Continue? [Y/n] y
[NOTE] The 'jobs' option was reset, its value was 1 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:
opam option jobs=1 --global
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] no changes from git+file:///Users/mac1000/opam-repository
2026-02-07 08:40.38 ---> using "7818e224f85c11d1d318abe9ba4e297be345388b7ed476f912b6900c6bae56aa" from cache
/: (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=macos os-distribution=homebrew os-version=15.5
# solver builtin-0install
# install-criteria -changed,-count[avoid-version,solution]
# upgrade-criteria -count[avoid-version,solution]
# jobs 11
# repositories 1 (version-controlled)
# pinned 0
# current-switch 4.14.2
# invariant ["ocaml-base-compiler" {= "4.14.2"} | "ocaml-system" {= "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 /Users/mac1000/.opam/4.14.2/lib/ocaml/stublibs:/Users/mac1000/.opam/4.14.2/lib/ocaml
# ocaml:preinstalled false
# ocaml:compiler 4.14.2
2026-02-07 08:40.38 ---> using "625776f8b2f728a128171e2ba4372c97abd18632a07574a8412026e8be39dac5" from cache
/: (env OPAMDOWNLOADJOBS 1)
/: (env OPAMERRLOGLEN 0)
/: (env OPAMPRECISETRACKING 1)
/: (env CI true)
/: (env OPAM_REPO_CI true)
/: (run (shell "rm -rf opam-repository/"))
2026-02-07 08:40.38 ---> using "15fbb76bf7dee5d6e8ae583230339015a61d8d2d8397de2cfe6459f8ba421f1e" from cache
/: (copy (src .) (dst opam-repository/))
2026-02-07 08:40.41 ---> using "b7cb158460b37ac1b30082f9f3d6680e4c46f1b439350bdd1fbf6f45dbcd2bf9" from cache
/: (run (shell "opam repository set-url -k local --strict default opam-repository/"))
[default] Initialised
2026-02-07 08:40.41 ---> using "3f7bacf189dcd505b2621a4989cbb87d0d24074a9fdce4a4e865a251e6e9d734" from cache
/: (run (network host)
(shell "opam update --depexts || true"))
+ /usr/local/bin/brew "update"
- ==> Updating Homebrew...
- ==> Downloading https://ghcr.io/v2/homebrew/core/portable-ruby/blobs/sha256:80c194381e990a4967a1ae44b8242b688e6a17ab590865a38671137677411469
- #=#=#
0.7%
# 1.6%
# 2.6%
-
## 3.4%
### 4.2%
### 5.1%
#### 6.0%
#### 6.8%
##### 7.7%
###### 8.6%
###### 9.4%
####### 10.3%
####### 11.0%
######## 11.8%
-
######### 12.7%
######### 13.3%
########## 14.1%
########## 15.1%
########### 15.9%
########### 16.3%
############ 16.7%
############ 17.1%
############ 17.5%
############ 17.9%
############# 18.4%
-
############# 18.8%
############# 19.2%
############## 19.6%
############## 20.0%
############## 20.3%
############## 20.6%
############## 20.8%
############### 21.2%
############### 21.5%
############### 21.8%
############### 22.1%
-
################ 22.3%
################ 22.7%
################ 23.0%
################ 23.3%
################ 23.6%
################# 23.8%
################# 24.1%
################# 24.4%
################# 24.7%
################# 24.9%
################## 25.4%
-
################## 25.6%
################## 25.9%
################## 26.2%
################### 26.4%
################### 26.7%
################### 27.1%
################### 27.4%
################### 27.7%
#################### 28.0%
#################### 28.2%
#################### 28.6%
-
#################### 28.9%
##################### 29.2%
##################### 29.5%
##################### 29.7%
##################### 30.0%
##################### 30.3%
###################### 30.6%
###################### 31.0%
###################### 31.2%
###################### 31.5%
###################### 31.8%
-
####################### 32.1%
####################### 32.3%
####################### 32.8%
####################### 33.0%
####################### 33.3%
######################## 33.6%
######################## 33.9%
######################## 34.1%
######################## 34.5%
######################### 34.8%
-
######################### 35.1%
######################### 35.5%
######################### 36.0%
########################## 36.5%
########################## 36.9%
########################## 37.3%
########################### 37.7%
########################### 38.2%
########################### 38.7%
############################ 39.3%
############################ 39.9%
-
############################# 40.3%
############################# 40.7%
############################# 41.3%
############################## 41.7%
############################## 42.1%
############################## 42.5%
############################## 42.9%
############################### 43.3%
############################### 43.6%
############################### 43.9%
############################### 44.1%
-
############################### 44.4%
################################ 44.7%
################################ 45.1%
################################ 45.4%
################################ 45.6%
################################# 45.9%
################################# 46.2%
################################# 46.6%
################################# 46.9%
################################# 47.2%
-
################################## 47.4%
################################## 47.7%
################################## 48.1%
################################## 48.4%
################################### 48.7%
################################### 48.9%
################################### 49.2%
################################### 49.5%
################################### 49.8%
#################################### 50.2%
-
#################################### 50.4%
#################################### 50.7%
#################################### 51.0%
#################################### 51.3%
##################################### 51.7%
##################################### 52.0%
##################################### 52.2%
##################################### 52.5%
###################################### 52.8%
###################################### 53.2%
###################################### 53.5%
-
###################################### 53.7%
###################################### 54.0%
####################################### 54.3%
####################################### 54.6%
####################################### 54.8%
####################################### 55.2%
####################################### 55.5%
######################################## 55.8%
######################################## 56.1%
######################################## 56.5%
######################################## 56.8%
-
######################################### 57.0%
######################################### 57.3%
######################################### 57.6%
######################################### 57.9%
######################################### 58.1%
########################################## 58.5%
########################################## 58.8%
########################################## 59.1%
########################################## 59.4%
########################################## 59.6%
########################################### 59.9%
-
########################################### 60.3%
########################################### 60.6%
########################################### 60.9%
############################################ 61.1%
############################################ 61.4%
############################################ 61.7%
############################################ 62.0%
############################################ 62.2%
############################################# 62.7%
############################################# 62.9%
############################################# 63.2%
-
############################################# 63.5%
############################################# 63.8%
############################################## 64.0%
############################################## 64.3%
############################################## 64.6%
############################################## 65.0%
############################################## 65.3%
############################################### 65.5%
############################################### 65.8%
############################################### 66.1%
-
############################################### 66.5%
################################################ 66.8%
################################################ 67.0%
################################################ 67.3%
################################################ 67.6%
################################################ 67.9%
################################################# 68.1%
################################################# 68.6%
################################################# 68.8%
################################################# 69.1%
################################################# 69.4%
-
################################################## 69.6%
################################################## 70.1%
################################################## 70.3%
################################################## 70.6%
################################################### 70.9%
################################################### 71.2%
################################################### 71.6%
################################################### 71.8%
################################################### 72.1%
#################################################### 72.4%
-
#################################################### 72.7%
#################################################### 72.9%
#################################################### 73.2%
##################################################### 73.6%
##################################################### 73.9%
##################################################### 74.2%
##################################################### 74.4%
##################################################### 74.7%
##################################################### 75.0%
###################################################### 75.3%
###################################################### 75.5%
-
###################################################### 76.0%
###################################################### 76.2%
####################################################### 76.5%
####################################################### 76.8%
####################################################### 77.1%
####################################################### 77.3%
####################################################### 77.6%
######################################################## 77.9%
######################################################## 78.3%
######################################################## 78.6%
######################################################## 78.8%
-
######################################################## 79.1%
######################################################### 79.4%
######################################################### 79.8%
######################################################### 80.1%
######################################################### 80.5%
########################################################## 80.8%
########################################################## 81.0%
########################################################## 81.4%
########################################################## 81.7%
########################################################### 82.0%
-
########################################################### 82.4%
########################################################### 82.7%
########################################################### 82.9%
########################################################### 83.2%
############################################################ 83.5%
############################################################ 83.9%
############################################################ 84.2%
############################################################ 84.5%
############################################################# 84.7%
############################################################# 85.0%
############################################################# 85.3%
############################################################# 85.7%
-
############################################################# 86.0%
############################################################## 86.2%
############################################################## 86.5%
############################################################## 86.8%
############################################################## 87.1%
############################################################## 87.5%
############################################################### 87.7%
############################################################### 88.0%
############################################################### 88.3%
############################################################### 88.6%
-
############################################################### 88.8%
################################################################ 89.1%
################################################################ 89.4%
################################################################ 89.7%
################################################################ 90.1%
################################################################# 90.4%
################################################################# 90.6%
################################################################# 90.9%
################################################################# 91.3%
################################################################# 91.6%
################################################################## 91.9%
-
################################################################## 92.1%
################################################################## 92.5%
################################################################## 92.8%
################################################################### 93.1%
################################################################### 93.4%
################################################################### 93.6%
################################################################### 93.9%
################################################################### 94.2%
#################################################################### 94.6%
#################################################################### 95.0%
-
#################################################################### 95.6%
##################################################################### 96.0%
##################################################################### 96.4%
##################################################################### 96.8%
##################################################################### 97.2%
###################################################################### 97.6%
###################################################################### 98.2%
####################################################################### 99.0%
####################################################################### 99.8%
######################################################################## 100.0%
- ==> Pouring portable-ruby-3.4.8.catalina.bottle.tar.gz
- ==> Homebrew collects anonymous analytics.
- Read the analytics documentation (and how to opt-out) here:
- https://docs.brew.sh/Analytics
- No analytics have been recorded yet (nor will be during this `brew` run).
-
- ==> Homebrew is run entirely by unpaid volunteers. Please consider donating:
- https://github.com/Homebrew/brew#donations
-
- Already up-to-date.
2026-02-07 08:40.41 ---> using "d756d0f2a4f7bdfebcf4a91e515d55a9b7180b8825da054c78bc6ea968930db8" from cache
/: (run (shell "opam pin add -k version -yn testcontainers-localstack.0.1.0 0.1.0"))
testcontainers-localstack is now pinned to version 0.1.0
2026-02-07 08:40.43 ---> saved as "cdd3302e935a154bc321e8c991f2f7539384dd9f238739f921e346bcd78e90cb"
/: (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
(network host)
(shell "opam reinstall testcontainers-localstack.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 \"\\\"macos-homebrew\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'testcontainers-localstack.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"))
testcontainers-localstack.0.1.0 is not installed. Install it? [Y/n] y
* No agreement on the version of ocaml:
- (invariant) -> ocaml-base-compiler = 4.14.2 -> ocaml = 4.14.2
- testcontainers-localstack -> testcontainers -> ocaml >= 5.0
You can temporarily relax the switch invariant with `--update-invariant'
* No agreement on the version of ocaml-base-compiler:
- (invariant) -> ocaml-base-compiler = 4.14.2
- testcontainers-localstack -> testcontainers -> ocaml >= 5.0 -> ocaml-base-compiler >= 5.0.0~
* Incompatible packages:
- (invariant) -> ocaml-base-compiler = 4.14.2
- testcontainers-localstack -> testcontainers -> ocaml >= 5.0 -> ocaml-variants >= 5.0.0~
* Missing dependency:
- testcontainers-localstack -> testcontainers -> ocaml >= 5.0 -> ocaml-variants >= 5.0.0~ -> system-msvc
unmet availability conditions: 'os = "win32"'
No solution found, exiting
"/usr/bin/env" "bash" "-c" "opam reinstall testcontainers-localstack.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 "\"macos-homebrew\""; then
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
fi;
test "$pkg" != 'testcontainers-localstack.0.1.0' && partial_fails="$partial_fails $pkg";
done;
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}";
exit 1" failed with exit status 20
2026-02-07 08:41.10: Job failed: Failed: Build failed
2026-02-07 08:41.10: Log analysis:
2026-02-07 08:41.10: >>>
No solution found, exiting
(score = 100)
2026-02-07 08:41.10: [SKIP] Package not available