generated from coulomb/repo-seed
chore: sync railiance deployment workplan tasks
Some checks failed
Build and Deploy / build-push-deploy (push) Has been cancelled
Some checks failed
Build and Deploy / build-push-deploy (push) Has been cancelled
Adds explicit task blocks and State Hub task IDs for IHUB-WP-0018 so WSJF triage no longer treats the active deployment workplan as empty or close-out-ready.
This commit is contained in:
@@ -4,11 +4,11 @@ type: workplan
|
||||
title: "Railiance01 Deployment — Production Operations Scaffold"
|
||||
domain: inter_hub
|
||||
repo: inter-hub
|
||||
status: open
|
||||
status: active
|
||||
owner: custodian
|
||||
topic_slug: inter_hub
|
||||
created: "2026-04-29"
|
||||
updated: "2026-04-29"
|
||||
updated: "2026-06-04"
|
||||
depends_on: IHUB-WP-0015
|
||||
state_hub_workstream_id: "080d841a-3acd-4adf-b684-2d1890a5e986"
|
||||
---
|
||||
@@ -61,10 +61,23 @@ git push → Gitea Actions
|
||||
→ PostgreSQL: database 'interhub' on railiance-platform HA cluster
|
||||
```
|
||||
|
||||
## Close-out Audit - 2026-06-04
|
||||
|
||||
WSJF triage flagged this workplan as a close-out candidate because State Hub had
|
||||
no indexed task rows for it. The deployment work is not complete; this file now
|
||||
contains explicit task blocks so the hub can track the remaining Railiance01
|
||||
deployment work instead of treating the workplan as empty.
|
||||
|
||||
## Tasks
|
||||
|
||||
### R1 — Add OCI image build to flake.nix
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0018-T01
|
||||
status: todo
|
||||
priority: high
|
||||
state_hub_task_id: "27420bd7-0f70-4793-8805-393d8d5cacfd"
|
||||
```
|
||||
Add a `packages.docker` output to `flake.nix` using `pkgs.dockerTools.buildLayeredImage`.
|
||||
The image wraps the IHP production binary produced by `nix build .#default`.
|
||||
|
||||
@@ -97,6 +110,12 @@ machine with the Nix store populated for GHC 9.10.3.
|
||||
|
||||
### R2 — Verify container runs correctly
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0018-T02
|
||||
status: todo
|
||||
priority: high
|
||||
state_hub_task_id: "5ab45e4e-16bc-4feb-8b1b-e8eeb05bf39a"
|
||||
```
|
||||
On haskelseed, run the container image against the existing `interhub` database.
|
||||
Confirm:
|
||||
- `curl http://localhost:8000/` returns 200 (LandingAction)
|
||||
@@ -110,6 +129,12 @@ image via `dockerTools.buildLayeredImage` `contents` or a NixOS module.
|
||||
|
||||
### R3 — Verify Railiance01 readiness (gate)
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0018-T03
|
||||
status: blocked
|
||||
priority: high
|
||||
state_hub_task_id: "79b5cf2c-3a5b-4b4b-8f84-f635cb6891c1"
|
||||
```
|
||||
This is a dependency gate. Before proceeding, confirm:
|
||||
|
||||
```bash
|
||||
@@ -129,6 +154,12 @@ Do not proceed until all checks pass.
|
||||
|
||||
### R4 — Provision inter-hub database on railiance-platform
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0018-T04
|
||||
status: blocked
|
||||
priority: high
|
||||
state_hub_task_id: "c937cf36-3850-4ab3-aa83-2d846e1a378e"
|
||||
```
|
||||
On the PostgreSQL HA cluster, create the inter-hub database and user:
|
||||
|
||||
```sql
|
||||
@@ -143,6 +174,12 @@ migration procedure in `deploy/railiance/RUNBOOK.md`.
|
||||
|
||||
### R5 — SOPS-encrypted secrets
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0018-T05
|
||||
status: blocked
|
||||
priority: high
|
||||
state_hub_task_id: "926f82d1-15cd-425d-8a41-3d6b51c07f0b"
|
||||
```
|
||||
Create `deploy/railiance/secrets/inter-hub.env.sops.yaml` with:
|
||||
|
||||
```yaml
|
||||
@@ -163,6 +200,12 @@ using the age key from a Kubernetes Secret (bootstrapped once manually).
|
||||
|
||||
### R6 — Helm chart in railiance-apps
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0018-T06
|
||||
status: blocked
|
||||
priority: high
|
||||
state_hub_task_id: "4c4acc98-5773-4289-ad57-03f3fd5c381c"
|
||||
```
|
||||
Create `helm/inter-hub/` in the `railiance-apps` repository following the
|
||||
Railiance app.toml contract. Minimal chart:
|
||||
|
||||
@@ -193,6 +236,12 @@ namespace = "inter-hub"
|
||||
|
||||
### R7 — Gitea Actions CI/CD pipeline
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0018-T07
|
||||
status: blocked
|
||||
priority: medium
|
||||
state_hub_task_id: "ec25c67c-3cb0-4534-9fb0-9bd6578a2def"
|
||||
```
|
||||
Create `.gitea/workflows/deploy.yaml` in the inter-hub repo:
|
||||
|
||||
```yaml
|
||||
@@ -230,6 +279,12 @@ deploy step directly without the SSH hop to coulombcore.
|
||||
|
||||
### R8 — Staged deployment and smoke test
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0018-T08
|
||||
status: blocked
|
||||
priority: high
|
||||
state_hub_task_id: "2b02ae5c-47b9-4f09-88f0-a4af7900b38f"
|
||||
```
|
||||
Follow the Railiance staged promotion lifecycle:
|
||||
|
||||
1. **Local verify** (done in R2 — container runs correctly)
|
||||
@@ -254,6 +309,12 @@ Follow the Railiance staged promotion lifecycle:
|
||||
|
||||
### R9 — Document and register
|
||||
|
||||
```task
|
||||
id: IHUB-WP-0018-T09
|
||||
status: blocked
|
||||
priority: medium
|
||||
state_hub_task_id: "4d1e55c7-8dbb-480f-b07b-6c5e39a04218"
|
||||
```
|
||||
- Write `deploy/railiance/RUNBOOK.md`: image build, migration procedure,
|
||||
secret rotation, rollback (`railiance rollback inter-hub`), log access
|
||||
(`kubectl logs -n inter-hub -l app=inter-hub --tail=100`)
|
||||
|
||||
Reference in New Issue
Block a user