M15: synchronize contracts and acceptance
This commit is contained in:
@@ -135,6 +135,27 @@ sed -i \
|
||||
docker compose -p mobilityops -f compose.yaml -f compose.unraid.yaml up -d db api web
|
||||
```
|
||||
|
||||
For an update of already configured workflows, preserve the live credential IDs. n8n
|
||||
2.x's CLI can bind every Header Auth node to the same credential when two credentials of
|
||||
that type exist, even when the committed names differ. Never import the name-only JSON
|
||||
directly over a live workflow. Export first, merge only the non-secret references, then
|
||||
import the generated files:
|
||||
|
||||
```bash
|
||||
docker exec n8n n8n export:workflow --all \
|
||||
--output=/data/backups/mobilityops-pre-update.json
|
||||
python n8n/workflows/merge_credential_refs.py \
|
||||
/mnt/cache/appdata/n8n/backups/mobilityops-pre-update.json \
|
||||
n8n/workflows /mnt/cache/appdata/n8n/imports/mobilityops-safe
|
||||
# import each generated fleet-ops-*.json, publish the four known IDs, then restart n8n
|
||||
```
|
||||
|
||||
The merge utility copies credential IDs and names only; credential values remain inside
|
||||
n8n's encrypted credential store. After restart, export the return workflow and verify
|
||||
that `Return webhook` uses `Fleet Ops Webhook Trigger Token`, while `Record follow-up`
|
||||
and `Report workflow heartbeat` use `Fleet Ops Service Token`. Finally run a real return
|
||||
and verify both a succeeded outbox delivery and a heartbeat execution ID in Automation.
|
||||
|
||||
The setup script reads the callback token from the mode-0600 deployment `.env`, builds and
|
||||
removes a temporary server-side import without writing the token to Git, and restarts the
|
||||
existing n8n so the production webhook is registered. The imported configuration remains
|
||||
|
||||
Reference in New Issue
Block a user