build-module-runtime.sh generalises the audit-logger runtime image to any module (mesh-tools + sdk + the module's dist, entrypoints for tools/events/provisioner). Two scenarios and two tests: assigned-plex proves a tools+events module serves its tools over a mesh-issued scoped account; assigned-redis proves a provider's runtime serves tools AND runs its provisioner in the same broker-bound process, provisioning a grant and emitting its lifecycle event. Both green. Claude-Session: https://claude.ai/code/session_01LrgweAeERJYBg88c5cKDzF
32 lines
1.0 KiB
YAML
32 lines
1.0 KiB
YAML
# One machine that becomes a mesh and then assigns itself redis — a *provider* module.
|
|
#
|
|
# plex-node proves an assigned module that serves tools (novox/hq ADR 0052). This proves the same
|
|
# for a provider: redis's runtime runs its provisioner AND its tools as one process under one scoped
|
|
# broker account. The provisioner emitting a lifecycle event is the thing 0052 fixes — before it,
|
|
# the provisioner ran in a container with no broker and its emit could not fire.
|
|
scenario: redis-node
|
|
|
|
segments:
|
|
hosting:
|
|
kind: public
|
|
cidr: [192.0.2.0/24]
|
|
|
|
machines:
|
|
anchor:
|
|
at: { segment: hosting, address: [192.0.2.10] }
|
|
inbound: allow
|
|
memory: 3GiB
|
|
cpus: 2
|
|
|
|
images:
|
|
- postgres:17-alpine
|
|
- cloudamqp/lavinmq:latest
|
|
- mesh-control:development
|
|
- redis:7-alpine
|
|
# Redis's tool+provisioner runtime, built by scripts/build-module-runtime.sh redis into the local
|
|
# daemon and stocked into the scenario's own registry, which is where the host pulls it from.
|
|
- mesh-runtime-redis:development
|
|
|
|
place:
|
|
all: [host, runtime]
|