feat(catalog): sync 5 new Bicep modules; fix docs for broken /data hot-reload
- Refreshed bicep_modules_catalog.json from ACR (27 -> 32 modules): adds elasticpool, managedidentity, signalr, testmodule, virtualnetworks. - Corrected README/EDITOR_SETUP: production ilsp.nomad has no /data volume mount (the Nomad client disables raw Docker bind mounts), so scripts/push_catalogs.sh + POST /reload silently no-op in prod. Catalog updates require commit + push (Gitea Actions rebuild + Nomad redeploy). /data hot-reload still works for local dev via `make run-with-data`.
This commit is contained in:
@@ -182,12 +182,20 @@ python3 scripts/sync_pipeline_templates.py # → pipeline_templates_catalog.js
|
|||||||
python3 scripts/sync_iac_module_sources.py # → iac_source_catalog.json (from DevOpsMCP)
|
python3 scripts/sync_iac_module_sources.py # → iac_source_catalog.json (from DevOpsMCP)
|
||||||
python3 scripts/sync_bicep_modules.py # → bicep_modules_catalog.json
|
python3 scripts/sync_bicep_modules.py # → bicep_modules_catalog.json
|
||||||
|
|
||||||
# 2. Push and deploy
|
# 2. Commit + push — Gitea Actions builds the image and Nomad redeploys it
|
||||||
bash scripts/push_catalogs.sh
|
git add bicep_modules_catalog.json iac_source_catalog.json pipeline_templates_catalog.json
|
||||||
|
git commit -m "chore: refresh catalogs"
|
||||||
|
git push
|
||||||
```
|
```
|
||||||
|
|
||||||
The `/reload` endpoint on the running service reloads catalogs from volume-mounted
|
> **Note**: `scripts/push_catalogs.sh` and the `/reload` endpoint only take effect if
|
||||||
files if present, so you can update without a full redeploy for pipeline templates.
|
> `/data` is volume-mounted into the running container. **Production (`ilsp.nomad`)
|
||||||
|
> currently has no `/data` mount** — the underlying Nomad client has raw Docker bind
|
||||||
|
> mounts disabled (`volumes are not enabled`), so `push_catalogs.sh` silently pushes
|
||||||
|
> to a path the container never sees, and `/reload` is a no-op there. `/data` only
|
||||||
|
> works for **local dev** via `make run-with-data`. In production, catalog updates
|
||||||
|
> always require a commit + redeploy (as above) until the client is configured with
|
||||||
|
> a proper Nomad `host_volume`.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -31,9 +31,14 @@ make health # curl health endpoint
|
|||||||
|
|
||||||
## Updating catalogs
|
## Updating catalogs
|
||||||
|
|
||||||
|
Catalogs are baked into the Docker image at build time — commit + push to update
|
||||||
|
production (see [EDITOR_SETUP.md](EDITOR_SETUP.md#updating-catalogs) for the full
|
||||||
|
workflow and a note on why `push_catalogs.sh` / `/reload` don't take effect in prod).
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python3 scripts/sync_pipeline_templates.py # scan AzDO + GHA template repos
|
python3 scripts/sync_pipeline_templates.py # scan AzDO + GHA template repos
|
||||||
bash scripts/push_catalogs.sh # scp to server + /reload
|
python3 scripts/sync_bicep_modules.py # from DevOpsMCP repo — needs az CLI + ACR access
|
||||||
|
git add *_catalog.json && git commit -m "chore: refresh catalogs" && git push
|
||||||
```
|
```
|
||||||
|
|
||||||
## Deploy
|
## Deploy
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user