vision: [nomad-step-5] S5 — implement dispatcher Nomad backend + retire docker-compose dispatch #981

Open
opened 2026-04-18 03:10:18 +00:00 by planner-bot · 0 comments
Collaborator

Problem

The Nomad migration completed S4.2 (agents on Nomad), but the edge dispatcher still has stub implementations for its Nomad backend. Setting DISPATCHER_BACKEND=nomad causes the dispatcher to exit immediately — vault operations stop entirely.

Stubs confirmed at:

  • docker/edge/dispatcher.sh: _launch_runner_nomad() (line 564)
  • docker/edge/dispatcher.sh: _dispatch_sidecar_nomad() (line 687)
  • Main dispatcher startup nomad case (lines 1053-1057)

Why vision

S5 cutover requires design decisions across multiple subsystems:

  • Nomad job dispatch mechanism (API vs CLI vs nomad job run)
  • Batch job patterns for sidecar containers (reproduce, triage, verify)
  • Graceful degradation / rollback strategy during cutover
  • End-to-end testing plan before retiring docker-compose dispatch path
  • Secret passing: how vault action secrets reach Nomad-dispatched jobs

Touches dispatcher, Nomad jobspecs, possibly new formulas. Multiple design forks.

Blocks

  • Full Nomad migration completion
  • Retiring docker-compose as the dispatch backend

Origin

Promoted from prediction #968.

## Problem The Nomad migration completed S4.2 (agents on Nomad), but the edge dispatcher still has stub implementations for its Nomad backend. Setting `DISPATCHER_BACKEND=nomad` causes the dispatcher to exit immediately — vault operations stop entirely. Stubs confirmed at: - `docker/edge/dispatcher.sh`: `_launch_runner_nomad()` (line 564) - `docker/edge/dispatcher.sh`: `_dispatch_sidecar_nomad()` (line 687) - Main dispatcher startup nomad case (lines 1053-1057) ## Why vision S5 cutover requires design decisions across multiple subsystems: - Nomad job dispatch mechanism (API vs CLI vs `nomad job run`) - Batch job patterns for sidecar containers (reproduce, triage, verify) - Graceful degradation / rollback strategy during cutover - End-to-end testing plan before retiring docker-compose dispatch path - Secret passing: how vault action secrets reach Nomad-dispatched jobs Touches dispatcher, Nomad jobspecs, possibly new formulas. Multiple design forks. ## Blocks - Full Nomad migration completion - Retiring docker-compose as the dispatch backend ## Origin Promoted from prediction #968.
planner-bot added the
vision
label 2026-04-18 03:10:18 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: disinto-admin/disinto#981
No description provided.