Tests that read ../../../mesh-catalog or ../../../mesh-host gave a verdict that depended on what sat beside the checkout: a stale or dirty sibling failed them on a desktop, and a missing one skipped them unseen. They now read the clone the build seat puts in MESH_CHECK_BESIDE, failing when it is absent there, and elsewhere a copy captured at a named commit. The skip had hidden that the builder test read a module retired by ADR 0190. The systemd reading test no longer counts the machine's own environment.d.
156 lines
2.8 KiB
Plaintext
156 lines
2.8 KiB
Plaintext
{
|
|
"module": "messenger",
|
|
"version": "1",
|
|
"slug": "msgr",
|
|
"runs-as": "messenger",
|
|
"seats": [
|
|
{
|
|
"name": "operator-channel",
|
|
"scope": "mesh",
|
|
"serves": [
|
|
"open",
|
|
"history",
|
|
"notify",
|
|
"asks"
|
|
],
|
|
"accepts": [
|
|
"ask",
|
|
"cancel"
|
|
],
|
|
"emits": [
|
|
"decided"
|
|
],
|
|
"by-caller": [
|
|
"ask",
|
|
"cancel",
|
|
"decided"
|
|
],
|
|
"records": [
|
|
"asks"
|
|
]
|
|
},
|
|
{
|
|
"name": "channel",
|
|
"scope": "mesh",
|
|
"kinded": true,
|
|
"accepts": [
|
|
"show",
|
|
"edit",
|
|
"send"
|
|
]
|
|
},
|
|
{
|
|
"name": "intake",
|
|
"scope": "mesh",
|
|
"kinded": true,
|
|
"emits": [
|
|
"choice",
|
|
"link",
|
|
"failed",
|
|
"standing"
|
|
],
|
|
"proofs": [
|
|
"code"
|
|
]
|
|
}
|
|
],
|
|
"claims": [
|
|
{
|
|
"name": "operator-channel",
|
|
"scope": "mesh",
|
|
"serves": [
|
|
"open",
|
|
"history",
|
|
"notify",
|
|
"asks"
|
|
]
|
|
}
|
|
],
|
|
"uses": [
|
|
"channel"
|
|
],
|
|
"consumes": [
|
|
"mesh-controller.condition-raised",
|
|
"mesh-controller.condition-changed",
|
|
"mesh-controller.condition-cleared",
|
|
"intake.choice",
|
|
"intake.link",
|
|
"intake.failed",
|
|
"intake.standing"
|
|
],
|
|
"emits": [
|
|
"refused"
|
|
],
|
|
"invokes": [
|
|
"seat:mesh-controller.conditions",
|
|
"seat:mesh-controller.root-free",
|
|
"seat:issue-tracker.tracking"
|
|
],
|
|
"state": [
|
|
"open",
|
|
"sent",
|
|
{
|
|
"name": "asks",
|
|
"ttl-seconds": 2592000
|
|
},
|
|
"identities"
|
|
],
|
|
"own-secrets": {
|
|
"broker": "${dir:state}/broker"
|
|
},
|
|
"secrets-owner": "messenger",
|
|
"tools": [
|
|
"messenger_status",
|
|
"messenger_recent",
|
|
"messenger_test",
|
|
"messenger_preview",
|
|
"messenger_check",
|
|
"messenger_identities",
|
|
"messenger_unlink"
|
|
],
|
|
"resources": [
|
|
{
|
|
"id": "account",
|
|
"type": "user",
|
|
"name": "messenger",
|
|
"shell": "/usr/bin/nologin",
|
|
"home": "/var/lib/messenger"
|
|
},
|
|
{
|
|
"id": "state",
|
|
"type": "directory",
|
|
"mode": "0700",
|
|
"place": ".",
|
|
"owner": "messenger"
|
|
},
|
|
{
|
|
"id": "settings",
|
|
"type": "file",
|
|
"path": "${dir:state}/settings.json",
|
|
"mode": "0600",
|
|
"merge": "json",
|
|
"content": "{\n \"time-zone\": \"\"\n}\n",
|
|
"owner": "messenger"
|
|
}
|
|
],
|
|
"build": {
|
|
"artifacts": [
|
|
{
|
|
"name": "tools",
|
|
"kind": "bundle",
|
|
"language": "go",
|
|
"system": "arch",
|
|
"from": "cmd/messenger",
|
|
"binary": "messenger",
|
|
"loads": [
|
|
"messenger"
|
|
],
|
|
"env": {
|
|
"MESH_MESSENGER_SETTINGS": "${dir:state}/settings.json",
|
|
"MESH_MESSENGER_STATE": "${dir:state}"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|