Organisationsmiragearp461301 ()alpine-3.22-4.14_opam-2.4

alpine-3.22-4.14_opam-2.4

Link Copied
Code Copied

Logs

2025-11-05 03:25.34: New job: test mirage/arp https://github.com/mirage/arp.git#refs/pull/33/head (461301e3d7e2735c23519312272cb69952bce54f) (linux-x86_64:alpine-3.22-4.14_opam-2.4)
Base: ocaml/opam:alpine-3.22-ocaml-4.14@sha256:7061e4d210c551f55328c75cfe57a1297de774a191b5ef915d0cd2547319e29e
Opam project build


To reproduce locally:


git clone --recursive "https://github.com/mirage/arp.git" && cd "arp" && git fetch origin "refs/pull/33/head" && git reset --hard 461301e3
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.22-ocaml-4.14@sha256:7061e4d210c551f55328c75cfe57a1297de774a191b5ef915d0cd2547319e29e
# alpine-3.22-4.14_opam-2.4
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.4 /usr/bin/opam
RUN opam init --reinit -ni
RUN uname -rs && opam exec -- ocaml -version && opam --version
WORKDIR /src
RUN sudo chown opam /src
RUN cd ~/opam-repository && (git cat-file -e 60c74a29f5d280ca9330c57b890e2e8c0fbc444c || git fetch origin master) && git reset -q --hard 60c74a29f5d280ca9330c57b890e2e8c0fbc444c && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 arp.opam ./
RUN opam pin add -yn arp.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base bos.0.2.1 cmdliner.2.0.0 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 domain-name.0.5.0 dune.3.20.2 dune-configurator.3.20.2 duration.0.2.1 ethernet.3.2.0 fmt.0.11.0 fpath.0.7.3 ipaddr.5.6.1 logs.0.9.0 lru.0.3.1 lwt.5.9.2 macaddr.5.6.1 mirage-net.4.0.0 mirage-sleep.4.1.0 mirage-vnetif.0.6.2 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 psq.0.2.1 re.1.14.0 rresult.0.7.0 seq.base stdlib-shims.0.3.0 topkg.1.1.0 uutf.1.0.4"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.4 --depext-only -y arp.dev $DEPS
RUN opam install $DEPS
COPY --chown=1000:1000 . /src
RUN opam exec -- dune build @install @check @runtest && rm -rf _build


END-OF-DOCKERFILE
docker build .
END-REPRO-BLOCK


2025-11-05 03:25.34: Using cache hint "mirage/arp-ocaml/opam:alpine-3.22-ocaml-4.14@sha256:7061e4d210c551f55328c75cfe57a1297de774a191b5ef915d0cd2547319e29e-alpine-3.22-4.14_opam-2.4-28f10c67b9b49ec094a2e57382c1ba38"
2025-11-05 03:25.34: Using OBuilder spec:
((from ocaml/opam:alpine-3.22-ocaml-4.14@sha256:7061e4d210c551f55328c75cfe57a1297de774a191b5ef915d0cd2547319e29e)
(comment alpine-3.22-4.14_opam-2.4)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(workdir /src)
(run (shell "sudo ln -f /usr/bin/opam-2.4 /usr/bin/opam"))
(run (shell "opam init --reinit -ni"))
(run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
(workdir /src)
(run (shell "sudo chown opam /src"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 60c74a29f5d280ca9330c57b890e2e8c0fbc444c || git fetch origin master) && git reset -q --hard 60c74a29f5d280ca9330c57b890e2e8c0fbc444c && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src arp.opam) (dst ./))
(run (network host)
(shell "opam pin add -yn arp.dev './'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
(env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base bos.0.2.1 cmdliner.2.0.0 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 domain-name.0.5.0 dune.3.20.2 dune-configurator.3.20.2 duration.0.2.1 ethernet.3.2.0 fmt.0.11.0 fpath.0.7.3 ipaddr.5.6.1 logs.0.9.0 lru.0.3.1 lwt.5.9.2 macaddr.5.6.1 mirage-net.4.0.0 mirage-sleep.4.1.0 mirage-vnetif.0.6.2 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 psq.0.2.1 re.1.14.0 rresult.0.7.0 seq.base stdlib-shims.0.3.0 topkg.1.1.0 uutf.1.0.4")
(env CI true)
(env OCAMLCI true)
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.4 --depext-only -y arp.dev $DEPS"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
(copy (src .) (dst /src))
(run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
)


2025-11-05 03:25.34: Waiting for resource in pool OCluster
2025-11-05 03:25.34: Waiting for worker…
2025-11-05 03:25.36: Got resource from pool OCluster
Building on doris.caelum.ci.dev
All commits already cached
HEAD is now at 461301e debug


(from ocaml/opam:alpine-3.22-ocaml-4.14@sha256:7061e4d210c551f55328c75cfe57a1297de774a191b5ef915d0cd2547319e29e)
Unable to find image 'ocaml/opam:alpine-3.22-ocaml-4.14@sha256:7061e4d210c551f55328c75cfe57a1297de774a191b5ef915d0cd2547319e29e' locally
docker.io/ocaml/opam@sha256:7061e4d210c551f55328c75cfe57a1297de774a191b5ef915d0cd2547319e29e: Pulling from ocaml/opam
2d35ebdb57d9: Pulling fs layer
4eef589852a3: Pulling fs layer
9bcbf19aa70e: Pulling fs layer
c27157cc8c0d: Pulling fs layer
2d35ebdb57d9: Waiting
4eef589852a3: Waiting
8eb40fc9ec7b: Pulling fs layer
9bcbf19aa70e: Waiting
c27157cc8c0d: Waiting
cf28fbda269d: Pulling fs layer
bdb05ad1bb03: Pulling fs layer
8eb40fc9ec7b: Waiting
cf28fbda269d: Waiting
14b089059d7b: Pulling fs layer
bdb05ad1bb03: Waiting
8fba92877dbb: Pulling fs layer
14b089059d7b: Waiting
8fba92877dbb: Waiting
b46b8c2b2e76: Pulling fs layer
c5fe84151a2d: Pulling fs layer
d69ebb2cea14: Pulling fs layer
8987930d7936: Pulling fs layer
07e0ebe0bb32: Pulling fs layer
c5fe84151a2d: Waiting
b46b8c2b2e76: Waiting
d69ebb2cea14: Waiting
a8a8cd8bbc43: Pulling fs layer
0eee052a54e0: Pulling fs layer
8987930d7936: Waiting
9d0f02e69e08: Pulling fs layer
07e0ebe0bb32: Waiting
4f4fb700ef54: Pulling fs layer
a8a8cd8bbc43: Waiting
9d0f02e69e08: Waiting
0eee052a54e0: Waiting
a90897db75ef: Pulling fs layer
4f4fb700ef54: Waiting
678b7f997d9a: Pulling fs layer
a90897db75ef: Waiting
55a17ca9d235: Pulling fs layer
b0fc237f6c26: Pulling fs layer
4a9f9668ab4a: Pulling fs layer
678b7f997d9a: Waiting
f4048786242d: Pulling fs layer
b0fc237f6c26: Waiting
55a17ca9d235: Waiting
322480b4b1d3: Pulling fs layer
4a9f9668ab4a: Waiting
f4048786242d: Waiting
eda2d7da1b04: Pulling fs layer
83325a5b2b26: Pulling fs layer
09b67e1d956f: Pulling fs layer
eda2d7da1b04: Waiting
2adafa4b73e4: Pulling fs layer
322480b4b1d3: Waiting
8e04b3ec100b: Pulling fs layer
09b67e1d956f: Waiting
83325a5b2b26: Waiting
7eac41d73ac6: Pulling fs layer
477769be07d7: Pulling fs layer
1121e0452bac: Pulling fs layer
a7433c286e2f: Pulling fs layer
d11ef3af080f: Pulling fs layer
477769be07d7: Waiting
1121e0452bac: Waiting
2adafa4b73e4: Waiting
595e38b8edfd: Pulling fs layer
8e04b3ec100b: Waiting
3b6068bfc654: Pulling fs layer
7eac41d73ac6: Waiting
d11ef3af080f: Waiting
a7433c286e2f: Waiting
595e38b8edfd: Waiting
e91a772be517: Pulling fs layer
3b6068bfc654: Waiting
7ab96ec90fc2: Pulling fs layer
9da6f0039b9b: Pulling fs layer
7ab96ec90fc2: Waiting
2d35ebdb57d9: Download complete
2d35ebdb57d9: Pull complete
4eef589852a3: Download complete
4eef589852a3: Pull complete
9bcbf19aa70e: Download complete
9bcbf19aa70e: Pull complete
8eb40fc9ec7b: Verifying Checksum
8eb40fc9ec7b: Download complete
bdb05ad1bb03: Verifying Checksum
bdb05ad1bb03: Download complete
cf28fbda269d: Verifying Checksum
cf28fbda269d: Download complete
14b089059d7b: Verifying Checksum
14b089059d7b: Download complete
8fba92877dbb: Verifying Checksum
8fba92877dbb: Download complete
b46b8c2b2e76: Verifying Checksum
b46b8c2b2e76: Download complete
c5fe84151a2d: Verifying Checksum
c5fe84151a2d: Download complete
8987930d7936: Verifying Checksum
8987930d7936: Download complete
c27157cc8c0d: Download complete
d69ebb2cea14: Verifying Checksum
d69ebb2cea14: Download complete
07e0ebe0bb32: Verifying Checksum
07e0ebe0bb32: Download complete
a8a8cd8bbc43: Download complete
0eee052a54e0: Download complete
4f4fb700ef54: Verifying Checksum
4f4fb700ef54: Download complete
9d0f02e69e08: Verifying Checksum
9d0f02e69e08: Download complete
678b7f997d9a: Download complete
b0fc237f6c26: Download complete
55a17ca9d235: Download complete
4a9f9668ab4a: Verifying Checksum
4a9f9668ab4a: Download complete
a90897db75ef: Download complete
322480b4b1d3: Verifying Checksum
322480b4b1d3: Download complete
f4048786242d: Download complete
eda2d7da1b04: Download complete
09b67e1d956f: Download complete
83325a5b2b26: Verifying Checksum
83325a5b2b26: Download complete
8e04b3ec100b: Download complete
2adafa4b73e4: Verifying Checksum
2adafa4b73e4: Download complete
c27157cc8c0d: Pull complete
8eb40fc9ec7b: Pull complete
477769be07d7: Verifying Checksum
477769be07d7: Download complete
cf28fbda269d: Pull complete
a7433c286e2f: Verifying Checksum
a7433c286e2f: Download complete
bdb05ad1bb03: Pull complete
14b089059d7b: Pull complete
8fba92877dbb: Pull complete
d11ef3af080f: Download complete
b46b8c2b2e76: Pull complete
c5fe84151a2d: Pull complete
d69ebb2cea14: Pull complete
595e38b8edfd: Verifying Checksum
595e38b8edfd: Download complete
8987930d7936: Pull complete
07e0ebe0bb32: Pull complete
a8a8cd8bbc43: Pull complete
0eee052a54e0: Pull complete
9d0f02e69e08: Pull complete
4f4fb700ef54: Pull complete
a90897db75ef: Pull complete
678b7f997d9a: Pull complete
55a17ca9d235: Pull complete
b0fc237f6c26: Pull complete
4a9f9668ab4a: Pull complete
f4048786242d: Pull complete
322480b4b1d3: Pull complete
eda2d7da1b04: Pull complete
83325a5b2b26: Pull complete
09b67e1d956f: Pull complete
2adafa4b73e4: Pull complete
8e04b3ec100b: Pull complete
1121e0452bac: Verifying Checksum
1121e0452bac: Download complete
e91a772be517: Download complete
7ab96ec90fc2: Download complete
9da6f0039b9b: Verifying Checksum
9da6f0039b9b: Download complete
3b6068bfc654: Verifying Checksum
3b6068bfc654: Download complete
7eac41d73ac6: Verifying Checksum
7eac41d73ac6: Download complete
7eac41d73ac6: Pull complete
477769be07d7: Pull complete
1121e0452bac: Pull complete
a7433c286e2f: Pull complete
d11ef3af080f: Pull complete
595e38b8edfd: Pull complete
3b6068bfc654: Pull complete
e91a772be517: Pull complete
7ab96ec90fc2: Pull complete
9da6f0039b9b: Pull complete
Digest: sha256:7061e4d210c551f55328c75cfe57a1297de774a191b5ef915d0cd2547319e29e
Status: Downloaded newer image for ocaml/opam@sha256:7061e4d210c551f55328c75cfe57a1297de774a191b5ef915d0cd2547319e29e
2025-11-05 03:25.41 ---> using "764276640f5b3f4ce6b610321003cb55f6545c42846dc0b360f6be7a346afe65" from cache


/: (comment alpine-3.22-4.14_opam-2.4)


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


/: (env CLICOLOR_FORCE 1)


/: (env OPAMCOLOR always)


/: (workdir /src)


/src: (run (shell "sudo ln -f /usr/bin/opam-2.4 /usr/bin/opam"))
2025-11-05 03:25.41 ---> using "8d3a3f91c34bcb4a3c2c41af677916db1b1aeb69f4124523420d860741206e81" from cache


/src: (run (shell "opam init --reinit -ni"))
Configuring from /home/opam/.opamrc and then 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-11-05 03:25.41 ---> using "80cc2d73a3cce579a5d41018a065c4344586f5bbd715aef5b9c0e18667e50085" from cache


/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-157-generic
The OCaml toplevel, version 4.14.2
2.4.1
2025-11-05 03:25.41 ---> using "6bcb34e5b8215558e18e4bcc0f747b6abee4482cbfcaa14a458779d5d7d78fd1" from cache


/src: (workdir /src)


/src: (run (shell "sudo chown opam /src"))
2025-11-05 03:25.41 ---> using "81df4a8c79746f89d234d628dd1ccfdec8212bedc95c89d950498203e2c8b140" from cache


/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 60c74a29f5d280ca9330c57b890e2e8c0fbc444c || git fetch origin master) && git reset -q --hard 60c74a29f5d280ca9330c57b890e2e8c0fbc444c && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch                  master     -> FETCH_HEAD
1abfcdbf14..56e7d9d388  master     -> origin/master
60c74a29f5 Merge pull request #28709 from hannesm/release-domain-name-v0.5.0


<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///home/opam/opam-repository


Everything as up-to-date as possible (run with --verbose to show unavailable upgrades).
However, you may "opam upgrade" these packages explicitly at these versions (e.g. "opam upgrade ocaml.5.3.0"), which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2025-11-05 03:25.41 ---> using "a923034c9ec25f2d9c74dfb97afdab1e854d2261854ec76fb9e0097a5e789152" from cache


/src: (copy (src arp.opam) (dst ./))
2025-11-05 03:25.41 ---> using "0b5908cad40238ef7ff7dc615384db4700d6ff46292bdd691e0f5ad128aa68b7" from cache


/src: (run (network host)
(shell "opam pin add -yn arp.dev './'"))
[arp.dev] synchronised (file:///src)
arp is now pinned to file:///src (version dev)
2025-11-05 03:25.41 ---> using "2ef72b935ad9bbeeadef49f8590c6efec44edb90aaffaf6c7571e5a2df29b65c" from cache


/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-11-05 03:25.41 ---> using "4e7fc928e5e720da7a031903b0c542aca8757a097a05a5e649f1d898d07709d3" from cache


/src: (env DEPS "alcotest.1.9.1 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base bos.0.2.1 cmdliner.2.0.0 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 domain-name.0.5.0 dune.3.20.2 dune-configurator.3.20.2 duration.0.2.1 ethernet.3.2.0 fmt.0.11.0 fpath.0.7.3 ipaddr.5.6.1 logs.0.9.0 lru.0.3.1 lwt.5.9.2 macaddr.5.6.1 mirage-net.4.0.0 mirage-sleep.4.1.0 mirage-vnetif.0.6.2 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 psq.0.2.1 re.1.14.0 rresult.0.7.0 seq.base stdlib-shims.0.3.0 topkg.1.1.0 uutf.1.0.4")


/src: (env CI true)


/src: (env OCAMLCI true)


/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.4 --depext-only -y arp.dev $DEPS"))
+ /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-114-g3bc4c29c93b [https://dl-cdn.alpinelinux.org/alpine/v3.22/main]
- v3.22.2-128-g58d67e11519 [https://dl-cdn.alpinelinux.org/alpine/v3.22/community]
- v20251016-1525-ga40353281ad [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v20251016-1542-gfee0f4458e8 [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v20251016-1543-ged8c3c08aa2 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 59867 distinct packages available


<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[arp.dev] synchronised (file:///src)


[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
2025-11-05 03:25.41 ---> using "c1614d612c1c967b85bb1048c22ee029a3d6ea81b0b47773d49d84ddc2b511b2" from cache


/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 34 packages
- install alcotest           1.9.1
- install astring            0.8.5
- install base-bytes         base
- install bos                0.2.1
- install cmdliner           2.0.0
- install cppo               1.8.0
- install csexp              1.5.2
- install cstruct            6.2.0
- install domain-name        0.5.0
- install dune               3.20.2
- install dune-configurator  3.20.2
- install duration           0.2.1
- install ethernet           3.2.0
- install fmt                0.11.0
- install fpath              0.7.3
- install ipaddr             5.6.1
- install logs               0.9.0
- install lru                0.3.1
- install lwt                5.9.2
- install macaddr            5.6.1
- install mirage-net         4.0.0
- install mirage-sleep       4.1.0
- install mirage-vnetif      0.6.2
- install ocaml-syntax-shims 1.0.0
- install ocamlbuild         0.16.1
- install ocamlfind          1.9.8
- install ocplib-endian      1.2
- install psq                0.2.1
- install re                 1.14.0
- install rresult            0.7.0
- install seq                base
- install stdlib-shims       0.3.0
- install topkg              1.1.0
- install uutf               1.0.4


<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved bos.0.2.1  (cached)
-> retrieved cmdliner.2.0.0  (cached)
-> retrieved cppo.1.8.0  (cached)
-> retrieved csexp.1.5.2  (cached)
-> retrieved cstruct.6.2.0  (cached)
-> retrieved domain-name.0.5.0  (cached)
-> retrieved duration.0.2.1  (cached)
-> retrieved ethernet.3.2.0  (cached)
-> retrieved fmt.0.11.0  (cached)
-> retrieved fpath.0.7.3  (cached)
-> retrieved ipaddr.5.6.1, macaddr.5.6.1  (cached)
-> retrieved logs.0.9.0  (cached)
-> retrieved lru.0.3.1  (cached)
-> retrieved mirage-net.4.0.0  (cached)
-> retrieved mirage-sleep.4.1.0  (cached)
-> retrieved lwt.5.9.2  (cached)
-> retrieved mirage-vnetif.0.6.2  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ocplib-endian.1.2  (cached)
-> retrieved psq.0.2.1  (cached)
-> retrieved rresult.0.7.0  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved re.1.14.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved uutf.1.0.4  (cached)
-> retrieved topkg.1.1.0  (cached)
-> retrieved dune.3.20.2, dune-configurator.3.20.2  (cached)
-> installed cmdliner.2.0.0
-> installed ocamlbuild.0.16.1
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed topkg.1.1.0
-> installed rresult.0.7.0
-> installed uutf.1.0.4
-> installed fmt.0.11.0
-> installed astring.0.8.5
-> installed fpath.0.7.3
-> installed dune.3.20.2
-> installed duration.0.2.1
-> installed csexp.1.5.2
-> installed cppo.1.8.0
-> installed cstruct.6.2.0
-> installed domain-name.0.5.0
-> installed macaddr.5.6.1
-> installed ocaml-syntax-shims.1.0.0
-> installed psq.0.2.1
-> installed re.1.14.0
-> installed stdlib-shims.0.3.0
-> installed ocplib-endian.1.2
-> installed lru.0.3.1
-> installed ipaddr.5.6.1
-> installed alcotest.1.9.1
-> installed dune-configurator.3.20.2
-> installed lwt.5.9.2
-> installed mirage-net.4.0.0
-> installed mirage-sleep.4.1.0
-> installed logs.0.9.0
-> installed ethernet.3.2.0
-> installed mirage-vnetif.0.6.2
-> installed bos.0.2.1
Done.
# To update the current shell environment, run: eval $(opam env)
2025-11-05 03:25.41 ---> using "808d25e754377ca69d5cc51dbb20ae6671edb1a30862dbaade4acce50ed7b7ac" from cache


/src: (copy (src .) (dst /src))
2025-11-05 03:25.42 ---> saved as "df9750c811dc12e68edb03663dd62d7fba838e66cf9e934ed904745f8b647d16"


/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/test && ./tests.exe)
Testing `ARP tests'.
This run has ID `CGGPFG6V'.


[OK]          Coder            0   valid arp decoding.
[OK]          Coder            1   unhandled arp decoding.
[OK]          Coder            2   short arp decoding.
[OK]          Coder            3   invalid operation decoding.
[OK]          Coder            4   decoding is inverse of encoding.
[OK]          Coder            5   encode_into works.
[OK]          Coder            6   encode_into fails with small bufs.
[OK]          Handler          0   create raises.
[OK]          Handler          1   basic tests.
[OK]          Handler          2   remove test.
[OK]          Handler          3   remove no test.
[OK]          Handler          4   alias test.
[OK]          Handler          5   alias remove test.
[OK]          Handler          6   static test.
[OK]          Handler          7   static alias test.
[OK]          Handler          8   more tests.
[OK]          Handler          9   handle good.
[OK]          Handler         10   handle generates req.
[OK]          Handler         11   handle generates req, next doesn't.
[OK]          Handler         12   alias wakes.
[OK]          Handler         13   static wakes.
[OK]          Handler         14   handle timeout.
[OK]          Handler         15   request send before timeout.
[OK]          Handler         16   multiple requests are send.
[OK]          Handler         17   multiple requests are send 2.
[OK]          Handler         18   handle reply.
[OK]          Handler         19   handle garp.
[OK]          Handler         20   answers broadcast request.
[OK]          Handler         21   answers unicast request.
[OK]          Handler         22   not answering random request.
[OK]          Handler         23   ignoring random.
[OK]          Handler         24   reply does not harm static entries.
[OK]          Handler         25   reply is in cache.
[OK]          Handler         26   dynamic entry can be queried.
[OK]          Handler         27   reply times out.
[OK]          Handler         28   dynamic entry overriden by same.
[OK]          Handler         29   dynamic entry overriden by other.
[OK]          Handler         30   dynamic entry is not advertised.
[OK]          Handler         31   reply wakes tasks.
[OK]          Handler         32   stale to dynamic on same MAC reply.
[OK]          Handler         33   stale stays stale on different MAC reply.
[OK]          Handler         34   probing to dynamic on same MAC reply.
[OK]          Handler         35   probing to stale on different MAC reply.


Full test results in `/src/_build/default/test/_build/_tests/ARP tests'.
Test Successful in 0.053s. 43 tests run.
(cd _build/default/test/mirage && ./tests.exe)
Testing `arp'.
This run has ID `JAXI2MRS'.


[OK]          arp          0   conversions neither lose nor gain information.
[OK]          arp          1   nonsense requests are ignored.
[OK]          arp          2   requests are responded to.
[OK]          arp          3   entries expire.
[OK]          arp          4   irrelevant requests are ignored.
[OK]          arp          5   set_ip sets ip, sends GARP.
[OK]          arp          6   add_ip, get_ip and remove_ip as advertised.
[OK]          arp          7   GARPs are heard and not cached.
[OK]          arp          8   unsolicited unicast replies are heard and no...
[OK]          arp          9   solicited unicast replies resolve pending th...
[OK]          arp         10   entries are replaced with new information.
[OK]          arp         11   unreachable IPs time out.
[OK]          arp         12   queries are tried repeatedly before timing out.


Test Successful in 20.726s. 13 tests run.
ASSERT serialize/deserialize
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:03
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:01)
tests.exe: [DEBUG] starting arp listener for 02:50:00:00:00:01
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [INFO] Failed to parse ARP frame ARP message has unsupported operation 3
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [INFO] Failed to parse ARP frame ARP message has unsupported operation 65535
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [INFO] Failed to parse ARP frame ARP message has unsupported operation 255
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [INFO] Failed to parse ARP frame ARP message has unsupported operation 256
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [INFO] Failed to parse ARP frame ARP message has unsupported operation 257
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [INFO] Failed to parse ARP frame ARP message has unsupported operation 0
tests.exe: [DEBUG] sending ARP request for 192.168.3.10 --> Pending
ASSERT parsed packet comparison
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:02)
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.10 (02:50:00:00:00:01)
tests.exe: [DEBUG] starting arp listener for 02:50:00:00:00:02
tests.exe: [DEBUG] resending ARP request for 192.168.3.10 (2 left)
tests.exe: [DEBUG] resending ARP request for 192.168.3.10 (1 left)
tests.exe: [INFO] ARP timeout after 2 retries for 192.168.3.10
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [DEBUG] replying to ARP request for 192.168.3.1 from 192.168.3.10 (mac 02:50:00:00:00:01)
ASSERT parsed packet comparison
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.10 (02:50:00:00:00:01)
[entries_expire] Set up listener with IP 192.168.3.10, MACs: listen=02:50:00:00:00:01 speak=02:50:00:00:00:02
tests.exe: [INFO] entries_expire: Set up listener with IP 192.168.3.10, MACs: listen=02:50:00:00:00:01 speak=02:50:00:00:00:02
tests.exe: [DEBUG] starting arp listener for 02:50:00:00:00:01
tests.exe: [INFO] entries_expire: Establishing cache entry for 192.168.3.1
tests.exe: [DEBUG] sending ARP request for 192.168.3.1 --> Pending
tests.exe: [DEBUG] entries_expire: Sending ARP reply
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [DEBUG] ARP reply received for 192.168.3.1/02:50:00:00:00:02, adding cache entry
tests.exe: [INFO] entries_expire: Query succeeded, got expected MAC 02:50:00:00:00:02
tests.exe: [DEBUG] entries_expire: ARP reply sent
[entries_expire] Cache entry established successfully
tests.exe: [INFO] entries_expire: Cache entry established. ARP cache state: mac 02:50:00:00:00:01 ip 192.168.3.10 entries 2 timeout 800 retries 2
192.168.3.1 at 02:50:00:00:00:02 (timeout in 40)
192.168.3.10 at 02:50:00:00:00:01 (static advertising)


tests.exe: [INFO] entries_expire: Sleeping 20s to ensure entry is completely removed from cache
[entries_expire] Sleeping 20s to ensure entry is completely removed
tests.exe: [DEBUG] ARP entry 192.168.3.1 (mac 02:50:00:00:00:02) timed out --> Stale
tests.exe: [DEBUG] removing stale ARP entry 192.168.3.1 (mac 02:50:00:00:00:02)
[entries_expire] After 20s sleep, checking cache state
tests.exe: [INFO] entries_expire: After 20s sleep. ARP cache state: mac 02:50:00:00:00:01 ip 192.168.3.10 entries 1 timeout 800 retries 2
192.168.3.10 at 02:50:00:00:00:01 (static advertising)


tests.exe: [INFO] entries_expire: Checking that entry is not in cache
[entries_expire] Checking that entry is not in cache (should generate ARP request)
tests.exe: [DEBUG] sending ARP request for 192.168.3.1 --> Pending
ASSERT parsed packet comparison
[entries_expire] Test completed successfully!
tests.exe: [INFO] entries_expire: Test completed successfully
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:01)
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.10 (02:50:00:00:00:02)
tests.exe: [DEBUG] starting arp listener for 02:50:00:00:00:01
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [DEBUG] ignoring ARP request for 0.0.0.0 from 192.168.3.10 (mac 02:50:00:00:00:02)
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [DEBUG] ignoring ARP request for 255.255.255.255 from 192.168.3.10 (mac 02:50:00:00:00:02)
tests.exe: [DEBUG] resending ARP request for 192.168.3.1 (2 left)
tests.exe: [DEBUG] resending ARP request for 192.168.3.1 (1 left)
tests.exe: [INFO] ARP timeout after 2 retries for 192.168.3.1
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:01)
ASSERT parsed packet comparison
ASSERT garp emitted when setting ip
ASSERT list of bound IPs on initialization
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:01)
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.10 (02:50:00:00:00:01)
ASSERT list of bound IPs after setting two IPs
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
ASSERT bound ips is an empty list on startup
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:01)
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:01)
ASSERT set ips with duplicate elements result in deduplication
ASSERT ip list is empty after removing only ip
ASSERT ip list is empty after removing from empty list
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:01)
ASSERT first ip is the only member of the set of bound ips
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:01)
ASSERT adding ips is idempotent
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [DEBUG] sending ARP request for 192.168.3.1 --> Pending
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:02)
tests.exe: [DEBUG] ARP reply received for 192.168.3.1/02:50:00:00:00:02, adding cache entry
ASSERT mismatch for expected query value
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [DEBUG] starting arp listener for 02:50:00:00:00:01
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [DEBUG] sending ARP request for 192.168.3.1 --> Pending
tests.exe: [DEBUG] resending ARP request for 192.168.3.1 (2 left)
tests.exe: [DEBUG] resending ARP request for 192.168.3.1 (1 left)
tests.exe: [INFO] ARP timeout after 2 retries for 192.168.3.1
tests.exe: [WARNING] Timeout querying 192.168.3.1. Table contents: mac 02:50:00:00:00:01 ip 0.0.0.0 entries 0 timeout 800 retries 2


tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [DEBUG] starting arp listener for 02:50:00:00:00:01
tests.exe: [DEBUG] sending ARP request for 192.168.3.1 --> Pending
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [DEBUG] ARP reply received for 192.168.3.1/02:50:00:00:00:02, adding cache entry
ASSERT mismatch for expected query value
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:03
tests.exe: [DEBUG] sending ARP request for 192.168.3.1 --> Pending
tests.exe: [DEBUG] arp listener started
tests.exe: [DEBUG] starting arp listener for 02:50:00:00:00:01
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:02)
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [DEBUG] ARP reply received for 192.168.3.1/02:50:00:00:00:02, adding cache entry
tests.exe: [DEBUG] Set IP for 02:50:00:00:00:02 to 192.168.3.1
tests.exe: [DEBUG] Listener table contents after IP set on claimant: mac 02:50:00:00:00:01 ip 0.0.0.0 entries 1 timeout 800 retries 2
192.168.3.1 at 02:50:00:00:00:02 (timeout in 40)


ASSERT mismatch for expected query value
tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:03)
tests.exe: [DEBUG] frame received for arpv4
tests.exe: [WARNING] MAC address for 192.168.3.1 moved from 02:50:00:00:00:02 to 02:50:00:00:00:03, marked as stale
tests.exe: [DEBUG] Set IP for 02:50:00:00:00:03 to 192.168.3.1
tests.exe: [DEBUG] Listener table contents after IP set on claimant: mac 02:50:00:00:00:01 ip 0.0.0.0 entries 1 timeout 800 retries 2
192.168.3.1 at 02:50:00:00:00:03 (stale, timeout in 800)


tests.exe: [DEBUG] request for stale entry 192.168.3.1/02:50:00:00:00:03 --> Probing
ASSERT mismatch for expected query value
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [DEBUG] sending ARP request for 192.168.3.1 --> Pending
tests.exe: [DEBUG] resending ARP request for 192.168.3.1 (2 left)
tests.exe: [DEBUG] resending ARP request for 192.168.3.1 (1 left)
tests.exe: [INFO] ARP timeout after 2 retries for 192.168.3.1
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
tests.exe: [DEBUG] sending ARP request for 192.168.3.1 --> Pending
ASSERT parsed packet comparison
tests.exe: [DEBUG] resending ARP request for 192.168.3.1 (2 left)
ASSERT parsed packet comparison
2025-11-05 03:26.05 ---> saved as "fee2f1aba6dfd9f3eb1809ff43d656b5f8ac1754f44d1ed3f21028420fe08e6d"
Job succeeded
2025-11-05 03:26.05: Job succeeded