implemented compose by url, parse, local yaml.

This commit is contained in:
boris committed 2026-07-10 13:32:40 +01:00
1 parent 53695f4fff
commit 784fff8faf
218 files changed
+2271 -640

No files matched your search

+28
View File
@@ -257,6 +257,34 @@ instead of exposing individual host ports.
See `host_vars/edge.yml.example`, `host_vars/downstream.yml.example`, and
`docs/topology.md`. The full Docker service list is in `docs/service-catalog.md`.
## Compose Updates
Compose-backed roles deploy from role-owned Jinja templates, not directly from
upstream examples. Upstream README and Compose examples are tracked as copied
snapshots under each role's `upstream/` directory and indexed in
`docs/upstream-sources.yml`.
Use `compose_paths` for Compose files inside an upstream repository and
`compose_urls` for direct raw HTTP Compose YAML fallbacks. Use role-level
`local_compose_file` for Compose reference material already stored in this
repository. README fenced Compose blocks are parsed when no explicit Compose
file is available.
Use `docs/compose-update-policy.md` when updating services so upstream drift,
NBOPS overrides, image pins, and generated Compose files stay reviewable in Git.
To test upstream references for one role:
```sh
scripts/vendor-upstream-snapshots.py jellyfin
```
To refresh copied upstream references:
```sh
scripts/vendor-upstream-snapshots.py --apply jellyfin
```
## Bootstrap
Render `templates/cloud-init-user-data.yml.j2` with host variables and pass it to