{ "module": "mesh-delivery-watchman", "version": "0.1", "slug": "watchman", "claims": [ { "name": "mesh-watchdogs", "scope": "mesh", "serves": [ "signals", "stuck", "presence", "dead-letters", "resync" ] } ], "reads": [ "mesh-delivery-builder.builds", "mesh-host.health", "mesh-provisioner.provisions", "node-engine.have" ], "invokes": [ "mesh-delivery-assigner.assigner_read_wants", "mesh-delivery-indexer.indexer_pending", "mesh-delivery-indexer.indexer_read_modules", "seat:mesh-hand-acts.hand-act" ], "consumes": [ "mesh-delivery-assigner.views.wants", "mesh-delivery-indexer.take-in.pending", "mesh-delivery-indexer.take-in.taken", "mesh-delivery-indexer.views.modules", "mesh-catalog.manifest-accepted", "mesh-delivery.source-moved", "mesh-delivery.filling", "mesh-delivery.full", "mesh-delivery.room", "mesh-delivery.record-opened", "mesh-delivery.record-ended", "mesh-catalog.filling", "mesh-catalog.full", "mesh-catalog.room", "mesh-wants.filling", "mesh-wants.full", "mesh-wants.room", "mesh-grants.filling", "mesh-grants.full", "mesh-grants.room", "node-build-go.ask-taken", "node-build-go.step-progress", "node-build-go.step-ended", "node-build-image.ask-taken", "node-build-image.step-progress", "node-build-image.step-ended", "node-build-node.ask-taken", "node-build-node.step-progress", "node-build-node.step-ended", "mesh-pipeline-runner.pipeline-started", "mesh-pipeline-runner.step-started", "mesh-pipeline-runner.step-ended", "mesh-pipeline-runner.wait-held", "mesh-pipeline-runner.wait-ended", "mesh-wants.wait-held", "mesh-wants.wait-ended", "mesh-grants.wait-held", "mesh-grants.wait-ended", "mesh-broker.created", "mesh-broker.refused", "mesh-conditions.findings-asked" ], "tools": [ "watchman_findings", "watchman_first_views", "watchman_first_view_again" ], "state": [ { "name": "presence", "history": 20 }, { "name": "pulse", "key-ttl": true }, { "name": "stuck", "history": 20 }, { "name": "first-views", "history": 1 } ], "own-secrets": { "broker": "${dir:state}/broker" }, "secrets-owner": "mesh-delivery-watchman", "resources": [ { "id": "account", "type": "user", "name": "mesh-delivery-watchman", "shell": "/usr/bin/nologin", "home": "/var/lib/mesh-delivery-watchman" }, { "id": "state", "type": "directory", "mode": "0700", "owner": "mesh-delivery-watchman", "place": ".", "unknown": "program" }, { "id": "socket-dir", "type": "directory", "path": "/var/lib/mesh-delivery-watchman-tools", "mode": "0755", "owner": "mesh-delivery-watchman", "unknown": "program" }, { "id": "watchman", "type": "process", "name": "mesh-delivery-watchman", "artifact": "program", "run": [ "./mesh-delivery-watchman" ], "env": { "MESH_BROKER_FILE": "${dir:state}/broker" }, "user": "mesh-delivery-watchman", "health": { "kind": "unit" } } ], "build": { "artifacts": [ { "name": "program", "kind": "bundle", "language": "go", "system": "arch", "from": "cmd/mesh-delivery-watchman", "binary": "mesh-delivery-watchman" }, { "name": "tools", "kind": "bundle", "language": "go", "system": "arch", "from": "cmd/mesh-delivery-watchman-tools", "binary": "mesh-delivery-watchman-tools", "loads": [ "mesh-delivery-watchman-tools" ] } ] }, "requires": [ { "name": "findings", "storage": "key-value", "template": "state", "options": { "history": 5 } }, { "name": "finding-events", "storage": "stream", "template": "events", "options": { "events": [ "finding-written.*", "finding-cleared.*", "findings-stated.*" ], "max-age-days": 7, "max-mib": 16 } } ] }