Build:
  1. 0
2026-06-06 07:09.09: New job: Build using linux-arm64 in
                                []
2026-06-06 07:09.09: Will push staging image to ocurrent/opam-staging:alpine-3.23-ocaml-5.4-arm64

Dockerfile:

# syntax=docker/dockerfile:1

FROM ocurrent/opam-staging@sha256:fdf46d038b0a2df9a4e4ac2efaa3da09ed43ea4793a4ac7517525d2a1171eaf3
ENV OPAMYES="1" OPAMCONFIRMLEVEL="unsafe-yes" OPAMERRLOGLEN="0" OPAMPRECISETRACKING="1"
USER root
RUN apk update && apk upgrade
RUN apk add zstd
USER opam
RUN opam switch create 5.4 --packages=ocaml-base-compiler.5.4.1
RUN opam pin add -k version ocaml-base-compiler 5.4.1
RUN opam install -y opam-depext
ENTRYPOINT [ "opam", "exec", "--" ]
CMD bash
COPY --link [ "Dockerfile", "/Dockerfile.ocaml" ]


2026-06-06 07:09.09: Using cache hint "5.4.1-arm64-ocurrent/opam-staging@sha256:fdf46d038b0a2df9a4e4ac2efaa3da09ed43ea4793a4ac7517525d2a1171eaf3"
2026-06-06 12:22.13: Waiting for worker…
2026-06-06 12:22.13: Got resource from pool OCluster
Building on kydoime.caelum.ci.dev
WARNING: experimental flag squash is removed with BuildKit. You should squash inside build using a multi-stage Dockerfile for efficiency.
#0 building with "default" instance using docker driver

#1 [internal] load build definition from Dockerfile
#1 transferring dockerfile: 568B done
#1 DONE 0.1s

#2 resolve image config for docker-image://docker.io/docker/dockerfile:1
#2 DONE 0.5s

#3 docker-image://docker.io/docker/dockerfile:1@sha256:87999aa3d42bdc6bea60565083ee17e86d1f3339802f543c0d03998580f9cb89
#3 CACHED

#4 [internal] load metadata for docker.io/ocurrent/opam-staging@sha256:fdf46d038b0a2df9a4e4ac2efaa3da09ed43ea4793a4ac7517525d2a1171eaf3
#4 DONE 0.0s

#5 [internal] load .dockerignore
#5 transferring context:
#5 transferring context: 2B done
#5 DONE 0.1s

#6 [1/7] FROM docker.io/ocurrent/opam-staging@sha256:fdf46d038b0a2df9a4e4ac2efaa3da09ed43ea4793a4ac7517525d2a1171eaf3
#6 DONE 0.0s

#7 [2/7] RUN apk update && apk upgrade
#7 CACHED

#8 [3/7] RUN apk add zstd
#8 CACHED

#9 [internal] load build context
#9 transferring context: 568B done
#9 DONE 0.0s

#10 [4/7] RUN opam switch create 5.4 --packages=ocaml-base-compiler.5.4.1
#10 0.627 
#10 0.627 <><> Installing new switch packages <><><><><><><><><><><><><><><><><><><><><><>
#10 0.627 Switch invariant: ["ocaml-base-compiler" {= "5.4.1"}]
#10 6.836 
#10 6.836 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
#10 10.16 -> installed base-bigarray.base
#10 10.16 -> installed base-threads.base
#10 10.16 -> installed base-unix.base
#10 10.16 -> installed ocaml-options-vanilla.1
#10 10.47 -> retrieved ocaml-config.3  (2 extra sources)
#10 11.19 -> retrieved ocaml-compiler.5.4.1  (https://opam.ocaml.org/cache)
#10 125.5 -> installed ocaml-compiler.5.4.1
#10 125.5 -> installed ocaml-base-compiler.5.4.1
#10 125.5 -> installed ocaml-config.3
#10 125.6 -> installed ocaml.5.4.1
#10 125.6 -> installed base-domains.base
#10 125.6 -> installed base-effects.base
#10 125.6 -> installed base-nnp.base
#10 126.1 Done.
#10 126.1 # Run eval $(opam env --switch=5.4) to update the current shell environment
#10 DONE 127.7s

#11 [5/7] RUN opam pin add -k version ocaml-base-compiler 5.4.1
#11 0.621 ocaml-base-compiler is now pinned to version 5.4.1
#11 0.621 
#11 6.771 No package build needed.
#11 6.771 Nothing to do.
#11 6.778 # Run eval $(opam env) to update the current shell environment
#11 DONE 6.8s

#12 [6/7] RUN opam install -y opam-depext
#12 6.954 The following actions will be performed:
#12 6.954   - install opam-depext 1.2.3
#12 6.954 
#12 6.954 <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
#12 7.200 -> retrieved opam-depext.1.2.3  (https://opam.ocaml.org/cache)
#12 11.35 -> installed opam-depext.1.2.3
#12 11.36 Done.
#12 11.36 
#12 11.36 <><> opam-depext.1.2.3 installed successfully <><><><><><><><><><><><><><><><><>
#12 11.36 => opam-depext is unnecessary when used with opam >= 2.1. Please use opam install directly instead
#12 11.37 # Run eval $(opam env) to update the current shell environment
#12 DONE 12.7s

#13 [7/7] COPY --link [ Dockerfile, /Dockerfile.ocaml ]
#13 DONE 0.0s

#14 exporting to image
#14 exporting layers
#14 exporting layers 2.2s done
#14 writing image sha256:584dcdecb2e8b849a60e44ccfd60d67178b4b8dd57780f6f5added41e7e59caf done
#14 DONE 2.2s

 1 warning found (use docker --debug to expand):
 - JSONArgsRecommended: JSON arguments recommended for CMD to prevent unintended behavior related to OS signals (line 13)
Pushing "sha256:584dcdecb2e8b849a60e44ccfd60d67178b4b8dd57780f6f5added41e7e59caf" to "ocurrent/opam-staging:alpine-3.23-ocaml-5.4-arm64" as user "ocurrentbuilder"
Login Succeeded
The push refers to repository [docker.io/ocurrent/opam-staging]
d4fa00440a2f: Preparing
8f1b352fe3c1: Preparing
ff7534281d1f: Preparing
c5410d2c2c32: Preparing
49cd1b4ac862: Preparing
2dd4f571c039: Preparing
31813c7579a7: Preparing
a2e426885aad: Preparing
f3d97c450c4c: Preparing
af63c3f6cf1e: Preparing
07673dbbe5ed: Preparing
7a4dfc016153: Preparing
579bc17651c1: Preparing
609938cf373c: Preparing
9eb72904e0d3: Preparing
ea53b4268576: Preparing
2d73bb6d6b0c: Preparing
f70ecc3e07a8: Preparing
a33ba41be853: Preparing
1631dc405d5a: Preparing
41f8ddc1a128: Preparing
ebcf32be5ecf: Preparing
b6b44e381f1c: Preparing
5998efe794ce: Preparing
a2e426885aad: Waiting
5f70bf18a086: Preparing
6783d7f17e2f: Preparing
8b26c5923313: Preparing
579bc17651c1: Waiting
8b26c5923313: Preparing
55e198474b06: Preparing
07673dbbe5ed: Waiting
530b0e031b48: Preparing
7a4dfc016153: Waiting
487fb1e42d2a: Preparing
f3d97c450c4c: Waiting
a0599f4dc0be: Preparing
609938cf373c: Waiting
9eb72904e0d3: Waiting
9ef33ba6c38e: Preparing
5d96ae2d5330: Preparing
af63c3f6cf1e: Waiting
546a3e571081: Preparing
1631dc405d5a: Waiting
3e0608ae066d: Preparing
b6b44e381f1c: Waiting
41f8ddc1a128: Waiting
0fd6998b0be1: Preparing
2dd4f571c039: Waiting
ea53b4268576: Waiting
86c70b64601b: Preparing
2d73bb6d6b0c: Waiting
1abe07052c5e: Preparing
ebcf32be5ecf: Waiting
a33ba41be853: Waiting
31813c7579a7: Waiting
45945454f2d4: Preparing
f70ecc3e07a8: Waiting
79ff96f06e7e: Preparing
530b0e031b48: Waiting
6783d7f17e2f: Waiting
a8d26d037006: Preparing
5998efe794ce: Waiting
8b26c5923313: Waiting
5d96ae2d5330: Waiting
9ef33ba6c38e: Waiting
487fb1e42d2a: Waiting
5f70bf18a086: Waiting
a0599f4dc0be: Waiting
3e0608ae066d: Waiting
0fd6998b0be1: Waiting
1abe07052c5e: Waiting
45945454f2d4: Waiting
79ff96f06e7e: Waiting
55e198474b06: Waiting
86c70b64601b: Waiting
a8d26d037006: Waiting
49cd1b4ac862: Layer already exists
2dd4f571c039: Layer already exists
31813c7579a7: Layer already exists
a2e426885aad: Layer already exists
f3d97c450c4c: Layer already exists
af63c3f6cf1e: Layer already exists
07673dbbe5ed: Layer already exists
d4fa00440a2f: Pushed
ff7534281d1f: Pushed
7a4dfc016153: Layer already exists
8f1b352fe3c1: Pushed
579bc17651c1: Layer already exists
609938cf373c: Layer already exists
9eb72904e0d3: Layer already exists
ea53b4268576: Layer already exists
2d73bb6d6b0c: Layer already exists
f70ecc3e07a8: Layer already exists
a33ba41be853: Layer already exists
41f8ddc1a128: Layer already exists
ebcf32be5ecf: Layer already exists
1631dc405d5a: Layer already exists
b6b44e381f1c: Layer already exists
5998efe794ce: Layer already exists
6783d7f17e2f: Layer already exists
5f70bf18a086: Layer already exists
8b26c5923313: Layer already exists
55e198474b06: Layer already exists
530b0e031b48: Layer already exists
487fb1e42d2a: Layer already exists
a0599f4dc0be: Layer already exists
9ef33ba6c38e: Layer already exists
546a3e571081: Layer already exists
5d96ae2d5330: Layer already exists
3e0608ae066d: Layer already exists
0fd6998b0be1: Layer already exists
86c70b64601b: Layer already exists
1abe07052c5e: Layer already exists
45945454f2d4: Layer already exists
a8d26d037006: Layer already exists
79ff96f06e7e: Layer already exists
c5410d2c2c32: Pushed
alpine-3.23-ocaml-5.4-arm64: digest: sha256:945d554716a045de48f2a1ebb2e18a5928c648a43461527e565886e4f0833e3d size: 9082
The push refers to repository [docker.io/ocurrent/opam-staging]
d4fa00440a2f: Preparing
8f1b352fe3c1: Preparing
ff7534281d1f: Preparing
c5410d2c2c32: Preparing
49cd1b4ac862: Preparing
2dd4f571c039: Preparing
31813c7579a7: Preparing
a2e426885aad: Preparing
f3d97c450c4c: Preparing
af63c3f6cf1e: Preparing
07673dbbe5ed: Preparing
7a4dfc016153: Preparing
579bc17651c1: Preparing
609938cf373c: Preparing
9eb72904e0d3: Preparing
ea53b4268576: Preparing
2d73bb6d6b0c: Preparing
f70ecc3e07a8: Preparing
a33ba41be853: Preparing
1631dc405d5a: Preparing
41f8ddc1a128: Preparing
ebcf32be5ecf: Preparing
b6b44e381f1c: Preparing
5998efe794ce: Preparing
5f70bf18a086: Preparing
6783d7f17e2f: Preparing
8b26c5923313: Preparing
8b26c5923313: Preparing
55e198474b06: Preparing
530b0e031b48: Preparing
31813c7579a7: Waiting
487fb1e42d2a: Preparing
a0599f4dc0be: Preparing
a2e426885aad: Waiting
9ef33ba6c38e: Preparing
f3d97c450c4c: Waiting
5d96ae2d5330: Preparing
b6b44e381f1c: Waiting
5998efe794ce: Waiting
546a3e571081: Preparing
3e0608ae066d: Preparing
1631dc405d5a: Waiting
609938cf373c: Waiting
5f70bf18a086: Waiting
2d73bb6d6b0c: Waiting
0fd6998b0be1: Preparing
af63c3f6cf1e: Waiting
86c70b64601b: Preparing
6783d7f17e2f: Waiting
41f8ddc1a128: Waiting
1abe07052c5e: Preparing
f70ecc3e07a8: Waiting
9eb72904e0d3: Waiting
ebcf32be5ecf: Waiting
a33ba41be853: Waiting
45945454f2d4: Preparing
07673dbbe5ed: Waiting
ea53b4268576: Waiting
8b26c5923313: Waiting
79ff96f06e7e: Preparing
9ef33ba6c38e: Waiting
a8d26d037006: Preparing
55e198474b06: Waiting
487fb1e42d2a: Waiting
530b0e031b48: Waiting
5d96ae2d5330: Waiting
2dd4f571c039: Waiting
3e0608ae066d: Waiting
7a4dfc016153: Waiting
579bc17651c1: Waiting
546a3e571081: Waiting
a0599f4dc0be: Waiting
45945454f2d4: Waiting
0fd6998b0be1: Waiting
1abe07052c5e: Waiting
86c70b64601b: Waiting
79ff96f06e7e: Waiting
a8d26d037006: Waiting
8f1b352fe3c1: Layer already exists
d4fa00440a2f: Layer already exists
ff7534281d1f: Layer already exists
49cd1b4ac862: Layer already exists
c5410d2c2c32: Layer already exists
2dd4f571c039: Layer already exists
a2e426885aad: Layer already exists
31813c7579a7: Layer already exists
f3d97c450c4c: Layer already exists
af63c3f6cf1e: Layer already exists
07673dbbe5ed: Layer already exists
7a4dfc016153: Layer already exists
579bc17651c1: Layer already exists
609938cf373c: Layer already exists
9eb72904e0d3: Layer already exists
ea53b4268576: Layer already exists
1631dc405d5a: Layer already exists
f70ecc3e07a8: Layer already exists
a33ba41be853: Layer already exists
2d73bb6d6b0c: Layer already exists
41f8ddc1a128: Layer already exists
ebcf32be5ecf: Layer already exists
5f70bf18a086: Layer already exists
b6b44e381f1c: Layer already exists
5998efe794ce: Layer already exists
6783d7f17e2f: Layer already exists
8b26c5923313: Layer already exists
55e198474b06: Layer already exists
530b0e031b48: Layer already exists
487fb1e42d2a: Layer already exists
9ef33ba6c38e: Layer already exists
a0599f4dc0be: Layer already exists
5d96ae2d5330: Layer already exists
546a3e571081: Layer already exists
3e0608ae066d: Layer already exists
0fd6998b0be1: Layer already exists
86c70b64601b: Layer already exists
1abe07052c5e: Layer already exists
79ff96f06e7e: Layer already exists
45945454f2d4: Layer already exists
a8d26d037006: Layer already exists
alpine-3.23-ocaml-5.4-arm64: digest: sha256:945d554716a045de48f2a1ebb2e18a5928c648a43461527e565886e4f0833e3d size: 9082
Job succeeded
2026-06-06 12:25.44: Job succeeded