package ocluster

  1. Overview
  2. Docs
Distribute build jobs to workers


Dune Dependency





v0.3.0 (2024-01-31)

  • Support OBuilder Docker backend on Windows and Linux (@MisterDA #143)

  • Support OBuilder FreeBSD worker (@tmcgilchrist #236)

  • Specify upper bound on number of items in OBuilder store (@mtelvers #229)

  • Add Prometheus statistics for OBuilder cache hit rate (@mtelvers #238)

v0.2.1 (2023-03-03)

  • Expose the ocluster-worker library in the ocluster-worker package (@MisterDA @art-w, #219 #217 #151, reviewed by @tmcgilchrist)

  • Remove corrupted repositories from the cache (@kit-ty-kate #216, reviewed by @talex5)

  • Allow workers to report additional prometheus metrics (@patricoferris #210, reviewed by @tmcgilchrist, @MisterDA)

  • Smother Cap'n Proto and TLS debug logs (@MisterDA #213, reviewed by @talex5)

  • Added command line option to set obuilder health check period (@mtelvers #214, reviewed by @tmcgilchrist)

  • Conditionally compile macos user_temp fetcher (@tmcgilchrist #209, reviewed by @MisterDA, @mtelvers)

  • Make rsync-mode mandatory when using rsync store (@tmcgilchrist #202, reviewed by @MisterDA)

  • Windows service bugfixes (@MisterDA #200, reviewed by @tmcgilchrist)

  • Fix build and opam metadata (@MisterDA @tmcgilchrist #199 #203)


  • Update OBuilder to pull in Windows prereqs (@MisterDA #196, reviewed by @tmcgilchrist)

  • Worker pool capacity metric (@mtelvers #195, reviewed by @talex5)

  • Update Ocluster to be macOS capable (@patricoferris #152, reviewed by @tmcgilchrist)

  • Use rsync-hardlink from OBuilder rsync store (@MisterDA #189, reviewed by @tmcgilchrist)

  • Various Dune 3 fixes (@MisterDA #187, reviewed by @talex5)

  • Switch from Debian to Ubuntu for Worker Builds (@mtelvers #185, reviewed by @dra27)

  • Update to Prometheus 1.2 (@mtelvers #183, reviewed by @MisterDA)

  • Default to GitLab merge-requests refspecs (@MisterDA #180, reviewed by @tmcgilchrist)

  • GitLab: allow fetching merge-requests from remote origin (@MisterDA #175, reviewed by @tmcgilchrist)

  • Updated Dockerfile* and .dockerignore (@mtelvers #178, reviewed by @tmcgilchrist and @MisterDA)

  • Upgrade lwt to 5.5.0 (@maiste #171 #181, reviewed by @dra27)

  • Added --terse option to ocluster-admin-show and added new command ocluster-admin-exec (@mtelvers #165, reviewed by @tmcgilchrist and @dra27)

  • Support custom jobs, adds custom job specifications to the cluster API. (@patricoferris #156, reviewed by @talex5)

  • Continuing the joy of submodule URL changes (@dra27 #164)

  • Update ocaml/opam-repository SHA includes tar-unix.2.0.1 (@mtelvers #161, reviewed by @dra27)

  • Run git submodule update when resetting the git clone (@MisterDA #163, reviewed by @tmcgilchrist)

  • Cmdliner.1.1.0 support (@MisterDA #160)

  • Explicitly set confirmation levels to allow for manually triggered jobs. (@tmcgilchrist #159, reviewed by @TheLortex)

  • Merge Obuilder with rsync store (@MisterDA #155, reviewed by @talex5)

  • Sqlite3 remove usage of "FALSE" for compatibility with older versions (@art-w #150, reviewed by @talex5)

  • Revert adopting GNU tar format (@dra27 #148)

  • Update obuilder to latest (@mtelvers #147)

  • Fix deprecations in Fmt 0.8.10 (@tmcgilchrist #145)

  • Lwt_unix.yield was deprecated in favor of Lwt.pause (@MisterDA #142, reviewed by @dra27)

  • Remove runc build from Dockerfile.worker (@talex5 #140)

  • Add Windows support (@MisterDA #128, reviewed by @dra27 and @talex5)

  • Admin client: fix ref-counting on progress display (@talex5 #138)

  • Add --verbose to README examples (@talex5 #137)

  • Use --connect for the worker capability too (@talex5 #136)

  • Make free-space check work on Windows (@talex5 #134)

  • Support Fmt.cli and Logs.cli (@MisterDA #133, reviewed by @talex5)

  • Windows support prerequisites (@talex5 and @MisterDA #132)

  • Update to capnp-rpc 1.2 and fix connection handling (@talex5 #131)

  • Improve reporting of connection errors (@talex5 #130)

  • Depend on more current_* modules to build examples (@MisterDA #129, reviewed by @talex5)

  • Add ca-certificates to Dockerfile (@talex5 #127)

  • API to wait for a worker to drain, useful for scripts that need to wait for a worker to stop before continuing. (@talex5 #126)

  • Allow pausing/unpausing/forgetting unconnected workers (@talex5 #125)

  • Fix ref-leak when rejecting duplicate workers (@talex5 #124)

  • Improve handling of a worker's active state (@talex5 #123)

  • Report better error on duplicate worker registration (@talex5 #122)

  • Switch pool tests to expect tests (@talex5 #121)

  • Add timestamps to OBuilder logs (@talex5 #120)

  • Fix opam constraint on digestif (@kit-ty-kate #118, reviewed by @talex5)

  • Add support for secrets. Secrets are a way to transmit sensitive key-value pairs to workers, without having them displayed in any log files. (@TheLortex #116, reviewed by @talex5)

  • Add optional label to build_obuilder (@TheLortex #113, reviewed by @talex5)


Initial release.


Innovation. Community. Security.