ocurrent / ocurrent/obuilder

CI failures on opam-repository release 0.6.0

Open
#179 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
OCaml
Stars
67
Forks
19
PR merge metrics
No merged PRs in 30d

Description

Failures are not seen in production or in our own CI.

PR: https://github.com/ocaml/opam-repository/pull/25147

Logs: https://opam.ci.ocaml.org/github/ocaml/opam-repository/commit/17d427351aedb72675ff938f7e099d6f62999d93

Relevant sections of the logs are repeated below in case the above link dies.

The following error occurs on variants: opam-2.0-ocaml-4.14, opam-2.0-ocaml-5.1, opam-2.1-ocaml-4.14, opam-2.1-ocaml-5.1, which are based on Debian 11.

  [OK]          spec                  0   Sexp.
  [OK]          spec                  1   Cache ID.
  [OK]          spec                  2   Docker Windows.
  [OK]          spec                  3   Docker UNIX.
  [OK]          tar_transfer          0   Long filename.
  [FAIL]        manifest              0   Copy using manifest.bash.
  [OK]          manifest              1   Copy using Manifest.
  [OK]          process               0   Execute a process.
  [OK]          process               1   Read stdout of a process.
  [OK]          build                 0   Simple.
  [OK]          build                 1   Prune.
  [OK]          build                 2   Concurrent.
  [OK]          build                 3   Concurrent failure.
  [OK]          build                 4   Concurrent failure 2.
  [OK]          build                 5   Cancel.
  [OK]          build                 6   Cancel 2.
  [OK]          build                 7   Cancel 3.
  [OK]          build                 8   Cancel 4.
  [OK]          build                 9   Cancel 5.
  [OK]          build                10   Delete.
  [OK]          secrets               0   Simple.
  [OK]          secrets               1   No secret provided.

┌──────────────────────────────────────────────────────────────────────────────┐
│ [FAIL]        manifest              0   Copy using manifest.bash.            │
└──────────────────────────────────────────────────────────────────────────────┘
test.exe: [INFO] Exec "which" "bash"
test.exe: [INFO] Exec "/usr/bin/bash" "--login" "-c" "exec ./manifest.bash "/opam-tmp/build_3d0f6e_dune/test-copy-bash-fb2533" "/" 0  1 'file'"
ASSERT File
test.exe: [INFO] Exec "which" "bash"
test.exe: [INFO] Exec "/usr/bin/bash" "--login" "-c" "exec ./manifest.bash "/opam-tmp/build_3d0f6e_dune/test-copy-bash-fb2533" "/" 0  1 './file'"
ASSERT File relative
test.exe: [INFO] Exec "which" "bash"
test.exe: [INFO] Exec "/usr/bin/bash" "--login" "-c" "exec ./manifest.bash "/opam-tmp/build_3d0f6e_dune/test-copy-bash-fb2533" "/" 0  1 '/file'"
ASSERT File absolute
test.exe: [INFO] Exec "which" "bash"
test.exe: [INFO] Exec "/usr/bin/bash" "--login" "-c" "exec ./manifest.bash "/opam-tmp/build_3d0f6e_dune/test-copy-bash-fb2533" "/" 0  1 'file2'"
ASSERT Missing
test.exe: [INFO] Exec "which" "bash"
test.exe: [INFO] Exec "/usr/bin/bash" "--login" "-c" "exec ./manifest.bash "/opam-tmp/build_3d0f6e_dune/test-copy-bash-fb2533" "/" 0  1 'file/file2'"
ASSERT Not dir
test.exe: [INFO] Exec "which" "bash"
test.exe: [INFO] Exec "/usr/bin/bash" "--login" "-c" "exec ./manifest.bash "/opam-tmp/build_3d0f6e_dune/test-copy-bash-fb2533" "/" 0  1 '../file'"
ASSERT Parent
test.exe: [INFO] Exec "which" "bash"
test.exe: [INFO] Exec "/usr/bin/bash" "--login" "-c" "exec ./manifest.bash "/opam-tmp/build_3d0f6e_dune/test-copy-bash-fb2533" "/" 0  1 'link'"
ASSERT Link
File "test/test.ml", line 682, character 2:
FAIL Link

   Expected: `Ok (Symlink(link /root))'
   Received: `Error Source path "link" not found'

Raised at Alcotest_engine__Test.check in file "src/alcotest-engine/test.ml", line 200, characters 4-261
Called from Dune__exe__Test.test_copy.(fun) in file "test/test.ml", line 682, characters 2-69
Called from Lwt.Sequential_composition.bind.create_result_promise_and_callback_if_deferred.callback in file "src/core/lwt.ml", line 1844, characters 16-19

The following error occurs on the ppc64-ocaml-5.1 variant.

  [OK]          spec                  0   Sexp.
  [OK]          spec                  1   Cache ID.
  [OK]          spec                  2   Docker Windows.
  [OK]          spec                  3   Docker UNIX.
  [OK]          tar_transfer          0   Long filename.
  [OK]          manifest              0   Copy using manifest.bash.
  [OK]          manifest              1   Copy using Manifest.
  [OK]          process               0   Execute a process.
  [OK]          process               1   Read stdout of a process.
  [OK]          build                 0   Simple.
  [OK]          build                 1   Prune.
  [OK]          build                 2   Concurrent.
  [OK]          build                 3   Concurrent failure.
  [OK]          build                 4   Concurrent failure 2.
  [OK]          build                 5   Cancel.
  [OK]          build                 6   Cancel 2.
  [OK]          build                 7   Cancel 3.
  [OK]          build                 8   Cancel 4.
  [OK]          build                 9   Cancel 5.
  [OK]          build                10   Delete.
  [FAIL]        secrets               0   Simple.
  [OK]          secrets               1   No secret provided.

┌──────────────────────────────────────────────────────────────────────────────┐
│ [FAIL]        secrets               0   Simple.                              │
└──────────────────────────────────────────────────────────────────────────────┘
test.exe: [INFO] b: "(from base)"
test.exe: [INFO] Base image not present; importing "base"…
test.exe: [INFO] Exec "sudo" "--" "mkdir" "-m" "755" "--" "/opam-tmp/build_1e6845_dune/mock-store-d0c0a7/cae662172fd450bb0cd710a769079c05bfc5d8e35efa6576edc7d0377afdd4a2-tmp/rootfs"
exec: [|sudo; --; mkdir; -m; 755; --;
         /opam-tmp/build_1e6845_dune/mock-store-d0c0a7/cae662172fd450bb0cd710a769079c05bfc5d8e35efa6576edc7d0377afdd4a2-tmp/rootfs|]
test.exe: [INFO] Exec "docker" "create" "--" "base"
exec: [|docker; create; --; base|]
test.exe: [INFO] Exec "docker" "export" "--" "base-11"
exec: [|docker; export; --; base-11|]
test.exe: [INFO] Exec "sudo" "--" "tar" "-C" "/opam-tmp/build_1e6845_dune/mock-store-0c0a7/cae662172fd450bb0cd710a769079c05bfc5d8e35efa6576edc7d0377afdd4a2-tmp/rootfs" "-xf" "-"
exec: [|sudo; --; tar; -C;
        /opam-tmp/build_1e6845_dune/mock-store-d0c0a7/cae662172fd450bb0cd710a769079c05bfc5d8e35efa6576edc7d0377afdd4a2-tmp/rootfs;
        -xf; -|]
test.exe: [INFO] Exec "docker" "rm" "--force" "--" "base-11"
exec: [|docker; rm; --force; --; base-11|]
docker rm --force "base-11"
test.exe: [INFO] Exec "docker" "image" "inspect" "--format" "{{range .Config.Env}}{{print . \x00"}}{{end}}" "--" "base"
exec: [|docker; image; inspect; --format;
        {{range .Config.Env}}{{print . "\x00"}}{{end}}; --; base|]
test.exe: [INFO] b: "---> saved as \"cae662172fd450bb0cd710a769079c05bfc5d8e35efa6576edc7d0377afdd4a2\""
test.exe: [INFO] b: "/: (run (secrets (test (target /testsecret)) (test2 (target /run/secrets/test2)))\n        (shell Append))"
test.exe: [INFO] b: "Append\n"
test.exe: [INFO] b: "---> saved as \"c8b43683cf1c63bfbab4cb0a12569ecc2cc91168b39c429b61be5616bd97acd6\""
ASSERT Final result
[exception] Unix.Unix_error(Unix.ENOENT, "unlink", "/opam-tmp/build_1e6845_dune/mock-store-d0c0a7/state/db/db.sqlite-wal")
            Raised by primitive operation at unknown location

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the CI log and the failing cases in test/test.ml, including the link check around line 682 and the secrets test. Reproduce the failures on the listed Debian 11 and ppc64-ocaml-5.1 variants, then trace the reported filesystem and state-database errors. Done means the affected variants complete all tests successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, ocaml
Domain
build-system, devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.