Initial import of verae-fleet from zapier monorepo
This commit is contained in:
commit
f13e2fbf68
42 changed files with 3086 additions and 0 deletions
16
services/archive-aggregator.json
Normal file
16
services/archive-aggregator.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"id": "archive-aggregator",
|
||||
"title": "Archive reply aggregator",
|
||||
"kind": "nats-worker",
|
||||
"package": "verae-archive-aggregator",
|
||||
"role": "archive-aggregator",
|
||||
"managed": true,
|
||||
"runtime": "query fan-out + merge",
|
||||
"health": { "type": "http", "path": "/health", "timeoutMs": 800 },
|
||||
"ports": { "healthBase": 13400 },
|
||||
"nats": {
|
||||
"in": ["verae.archive.reply.*"],
|
||||
"out": ["verae.archive.query"]
|
||||
},
|
||||
"notes": "Broadcast archive.query (no queue group). kinds may include tree."
|
||||
}
|
||||
16
services/archive-worm.json
Normal file
16
services/archive-worm.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"id": "archive-worm",
|
||||
"title": "Bloom-filtered WORM archive",
|
||||
"kind": "nats-archive",
|
||||
"package": "verae-archive-worm",
|
||||
"role": "archive-worm",
|
||||
"managed": true,
|
||||
"runtime": "N copies, bloom miss = silence",
|
||||
"health": { "type": "http", "path": "/health", "timeoutMs": 800 },
|
||||
"ports": { "healthBase": 13500 },
|
||||
"nats": {
|
||||
"in": ["verae.archive.put", "verae.archive.query"],
|
||||
"out": ["verae.archive.reply.<correlationId>"]
|
||||
},
|
||||
"notes": "Subscribe to query without a shared queue group."
|
||||
}
|
||||
16
services/job-poller.json
Normal file
16
services/job-poller.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"id": "job-poller",
|
||||
"title": "Job poller worker",
|
||||
"kind": "nats-worker",
|
||||
"package": "verae-zapier-middleware",
|
||||
"role": "job-poller",
|
||||
"managed": true,
|
||||
"runtime": "JetStream consumer",
|
||||
"health": { "type": "http", "path": "/health", "timeoutMs": 800 },
|
||||
"ports": { "healthBase": 13200 },
|
||||
"nats": {
|
||||
"in": ["verae.zapier.jobs.watch"],
|
||||
"out": ["verae.zapier.jobs.events"]
|
||||
},
|
||||
"notes": "GET chain status; emit terminal events. Queue group job-poller."
|
||||
}
|
||||
17
services/middleware-http.json
Normal file
17
services/middleware-http.json
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"id": "middleware-http",
|
||||
"title": "Verae Zapier HTTP middleware",
|
||||
"kind": "http",
|
||||
"package": "verae-zapier-middleware",
|
||||
"role": "middleware-http",
|
||||
"managed": true,
|
||||
"runtime": "HTTPS :3100 /zapier/v1",
|
||||
"health": { "type": "http", "path": "/health", "timeoutMs": 800 },
|
||||
"ports": { "healthBase": 13100 },
|
||||
"env": { "PORT": "3100", "NATS_URL": "nats://127.0.0.1:4222" },
|
||||
"nats": {
|
||||
"in": ["verae.zapier.jobs.events"],
|
||||
"out": ["verae.zapier.jobs.watch", "verae.zapier.webhooks.deliver"]
|
||||
},
|
||||
"notes": "Wait path subscribes jobs.events. Never expose NATS to Zapier."
|
||||
}
|
||||
11
services/nats.json
Normal file
11
services/nats.json
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"id": "nats",
|
||||
"title": "NATS JetStream (NS1 loopback)",
|
||||
"kind": "external",
|
||||
"package": null,
|
||||
"managed": false,
|
||||
"runtime": "nats-server -js on 127.0.0.1:4222",
|
||||
"health": { "type": "tcp", "host": "127.0.0.1", "port": 4222, "timeoutMs": 400 },
|
||||
"nats": { "in": [], "out": [] },
|
||||
"notes": "Do not bind 0.0.0.0. Zapier never connects here. Fleet monitors only; does not spawn nats-server."
|
||||
}
|
||||
16
services/tree-node.json
Normal file
16
services/tree-node.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"id": "tree-node",
|
||||
"title": "Merkle tree-node archive",
|
||||
"kind": "nats-archive",
|
||||
"package": "verae-tree-node",
|
||||
"role": "tree-node",
|
||||
"managed": true,
|
||||
"runtime": "N copies holding leaf proofs for bulk summaries",
|
||||
"health": { "type": "http", "path": "/health", "timeoutMs": 800 },
|
||||
"ports": { "healthBase": 13600 },
|
||||
"nats": {
|
||||
"in": ["verae.archive.put", "verae.archive.query"],
|
||||
"out": ["verae.archive.reply.<correlationId>"]
|
||||
},
|
||||
"notes": "keepFloor in fleet.json must stay >= 3 so a leaf query still has a node that might hold the shard. Bloom miss = no packet."
|
||||
}
|
||||
37
services/unmanaged.json
Normal file
37
services/unmanaged.json
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
{
|
||||
"id": "_unmanaged",
|
||||
"title": "Not fleet-spawned (listed for operators)",
|
||||
"entries": [
|
||||
{
|
||||
"id": "zapier-platform-app",
|
||||
"package": "verae-zapier",
|
||||
"runtime": "Zapier cloud",
|
||||
"notes": "HTTPS only to zappier-edge. Never NATS."
|
||||
},
|
||||
{
|
||||
"id": "verae-activate",
|
||||
"package": "verae-activate",
|
||||
"runtime": "Zapier cloud (activate-now app)"
|
||||
},
|
||||
{
|
||||
"id": "request-splitter",
|
||||
"package": "verae-request-splitter",
|
||||
"runtime": "library in middleware"
|
||||
},
|
||||
{
|
||||
"id": "verae-chain-client",
|
||||
"package": "verae-zapier-middleware",
|
||||
"runtime": "library → api.veraetime.net or MOCK"
|
||||
},
|
||||
{
|
||||
"id": "zapier-user-docs",
|
||||
"package": "zapier-user-docs",
|
||||
"runtime": "static"
|
||||
},
|
||||
{
|
||||
"id": "docs-master",
|
||||
"package": "docs-master",
|
||||
"runtime": "static"
|
||||
}
|
||||
]
|
||||
}
|
||||
16
services/webhook-deliver.json
Normal file
16
services/webhook-deliver.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"id": "webhook-deliver",
|
||||
"title": "Zapier REST Hook deliverer",
|
||||
"kind": "nats-worker",
|
||||
"package": "verae-zapier-middleware",
|
||||
"role": "webhook-deliver",
|
||||
"managed": true,
|
||||
"runtime": "JetStream consumer + HTTPS POST",
|
||||
"health": { "type": "http", "path": "/health", "timeoutMs": 800 },
|
||||
"ports": { "healthBase": 13300 },
|
||||
"nats": {
|
||||
"in": ["verae.zapier.webhooks.deliver", "verae.zapier.jobs.events"],
|
||||
"out": []
|
||||
},
|
||||
"notes": "HTTPS POST to Zapier hook URL. Not a NATS client in Zapier cloud."
|
||||
}
|
||||
14
services/zapier-simulator.json
Normal file
14
services/zapier-simulator.json
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"id": "zapier-simulator",
|
||||
"title": "Zapier interface simulator + trace console",
|
||||
"kind": "http",
|
||||
"package": "verae-zapier-simulator",
|
||||
"role": "zapier-simulator",
|
||||
"managed": true,
|
||||
"runtime": "HTTP 127.0.0.1:3847",
|
||||
"health": { "type": "http", "path": "/health", "timeoutMs": 800 },
|
||||
"ports": { "healthBase": 13847 },
|
||||
"env": { "SIM_PORT": "3847" },
|
||||
"nats": { "in": [], "out": [] },
|
||||
"notes": "Optional. min 0 in central fleet.json. Does not talk to live NATS."
|
||||
}
|
||||
14
services/zappier-edge.json
Normal file
14
services/zappier-edge.json
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"id": "zappier-edge",
|
||||
"title": "Zappier commercial HTTPS edge",
|
||||
"kind": "http",
|
||||
"package": "zappier",
|
||||
"role": "zappier-edge",
|
||||
"managed": true,
|
||||
"runtime": "HTTPS :3000 (portal, admin, meter)",
|
||||
"health": { "type": "http", "path": "/health", "timeoutMs": 800 },
|
||||
"ports": { "healthBase": 13000 },
|
||||
"env": { "PORT": "3000" },
|
||||
"nats": { "in": [], "out": [] },
|
||||
"notes": "Zapier x-api-key lands here. HTTPS to middleware only."
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue