···
2
+
synopsis: "Distribute build jobs to workers"
4
+
OCluster manages a pool of build workers.
5
+
A build scheduler service accepts build jobs from clients and distributes them to worker machines using Cap'n Proto.
6
+
Workers register themselves by connecting to the scheduler (and workers do not need to be able to accept incoming network connections).
8
+
The scheduler can manage multiple pools (e.g. `linux-x86_64` and `linux-arm32`).
9
+
Clients say which pool should handle their requests.
10
+
At the moment, two build types are provided: building a Dockerfile, or building an OBuilder spec.
11
+
In either case, the build may done in the context of some Git commit.
12
+
The scheduler tries to schedule similar builds on the same machine, to benefit from caching."""
13
+
maintainer: ["talex5@gmail.com"]
14
+
authors: ["talex5@gmail.com"]
15
+
license: "Apache-2.0"
16
+
homepage: "https://github.com/ocurrent/ocluster"
17
+
bug-reports: "https://github.com/ocurrent/ocluster/issues"
19
+
"dune" {>= "3.3" & < "3.6.0"}
20
+
"ppx_expect" {>= "v0.14.1"}
21
+
"prometheus" {>= "1.2"}
24
+
"ocluster-api" {= version}
28
+
"capnp-rpc-unix" {>= "1.2"}
29
+
"extunix" {>= "0.4.1"}
30
+
"winsvc" {>= "1.0.1" & os = "win32"}
31
+
"cmdliner" {>= "1.1.0"}
34
+
"conf-libev" {os != "win32"}
35
+
"digestif" {>= "0.8"}
38
+
"prometheus-app" {>= "1.2"}
41
+
"obuilder" {>= "0.5"}
43
+
"mirage-crypto" {>= "0.8.5"}
44
+
"ocaml" {>= "4.12.0"}
45
+
"current_ocluster" {= version & with-test}
46
+
"alcotest" {>= "1.0.0" & with-test}
47
+
"alcotest-lwt" {>= "1.0.1" & with-test}
51
+
["dune" "subst"] {dev}
60
+
"@runtest" {with-test & os != "macos"}
64
+
dev-repo: "git+https://github.com/ocurrent/ocluster.git"
67
+
"https://github.com/ocurrent/ocluster/releases/download/v0.2/ocluster-0.2.tbz"
69
+
"sha256=a6245d78f1f2b4b431596cfe167dfe18497b72c2844b8b7fb99603731eda4192"
70
+
"sha512=477f16a1abc7de7c8e807ac1b8e33a461865e20358734716707874af2e6fec47f7fe24753cd88d520fe94921d9f1f8da63d96c41ab1dfae9f86be85dd4098c7d"
73
+
x-commit-hash: "222011c2ef5100f9ed43234c59d215dc2430bfca"