{ "module": "mesh-delivery-builder", "version": "1", "slug": "builder", "consumes": [ "mesh-build-go.toolchain.reported", "mesh-build-node.toolchain.reported" ], "state": [ { "name": "builds", "history": 5 } ], "reads": [ "mesh-build-go.steps", "mesh-build-go.toolchains", "mesh-build-node.steps", "mesh-build-node.toolchains", "mesh-delivery-indexer.manifests", "mesh-delivery-indexer.modules", "mesh-delivery-watchman.presence", "node-engine.have" ], "invokes": [ "mesh-build-go.build_go_build", "mesh-build-go.build_go_fetch", "mesh-build-node.build_node_build", "mesh-build-node.build_node_fetch" ], "config": { "capacity": { "type": "string", "description": "How many build steps the builder runs at once on each node, as node=steps pairs separated by commas, such as shanks=3,ace=2 (ADR 0478 clause 3); a node set to 0 never builds, a node not named runs one at a time, and empty is one everywhere. The builder builds on shanks and ace only (the operator, 2026-10-21).", "pattern": "|[a-z0-9_-]+=[0-9]+(,[a-z0-9_-]+=[0-9]+)*", "default": "shanks=3,ace=2,g14=0,novox=0" } }, "own-secrets": { "broker": "${dir:state}/broker" }, "secrets-owner": "mesh-delivery-builder", "resources": [ { "id": "account", "type": "user", "name": "mesh-delivery-builder", "shell": "/usr/bin/nologin", "home": "/var/lib/mesh-delivery-builder" }, { "id": "state", "type": "directory", "mode": "0700", "owner": "mesh-delivery-builder", "place": ".", "unknown": "program" }, { "id": "settings", "trusted": false, "type": "file", "path": "${dir:state}/settings.json", "mode": "0600", "owner": "mesh-delivery-builder", "takes-config": ["capacity"], "merge": "json", "template": "files/settings.json" }, { "id": "builder", "type": "process", "name": "mesh-delivery-builder", "artifact": "program", "run": [ "./mesh-delivery-builder" ], "env": { "MESH_BROKER_FILE": "${dir:state}/broker", "MESH_BUILDER_SETTINGS": "${dir:state}/settings.json" }, "restart-on": [ "settings" ], "user": "mesh-delivery-builder", "health": { "kind": "unit" } } ], "build": { "artifacts": [ { "name": "program", "kind": "bundle", "language": "go", "system": "arch", "from": "cmd/mesh-delivery-builder", "binary": "mesh-delivery-builder" }, { "name": "files", "kind": "archive", "from": "files" } ] } }