Merge pull request 'fix(infra/caddy): site-блоки с секретами переживают деплой — import caddy/local/*.caddy' (#2921) from fix/caddy-garmin-import into main
All checks were successful
Deploy / changes (push) Successful in 9s
Deploy / build-backend (push) Successful in 45s
Deploy / build-worker (push) Successful in 46s
Deploy / build-frontend (push) Successful in 46s
Deploy / deploy (push) Successful in 1m25s
Deploy / deploy-status (push) Successful in 1s
All checks were successful
Deploy / changes (push) Successful in 9s
Deploy / build-backend (push) Successful in 45s
Deploy / build-worker (push) Successful in 46s
Deploy / build-frontend (push) Successful in 46s
Deploy / deploy (push) Successful in 1m25s
Deploy / deploy-status (push) Successful in 1s
This commit is contained in:
commit
b1106916a9
3 changed files with 24 additions and 0 deletions
16
Caddyfile
16
Caddyfile
|
|
@ -504,3 +504,19 @@ git.gendsgn.ru {
|
|||
}
|
||||
}
|
||||
# Test deploy flow 2026-05-15T21:43:32Z
|
||||
|
||||
# ─────────────────────────────────────────────────────────────────────────────
|
||||
# Локальные site-блоки, которых не может быть в git.
|
||||
#
|
||||
# Мотив: garmin.gendsgn.ru (личный remote MCP на этом же VPS). Апстрим-сервер
|
||||
# аутентификации не имеет вовсе, а claude.ai custom connector ходит на голый URL
|
||||
# без кастомных заголовков — единственный доступный рубеж это секрет в пути.
|
||||
# Секрет в git класть нельзя, а блок, вписанный руками прямо сюда, сносится
|
||||
# первым же деплоем (`git reset --hard origin/main`; 2026-08-16 так и вышло —
|
||||
# контейнер остался жив, но хост пропал вместе со своим сертификатом).
|
||||
#
|
||||
# Поэтому: сам блок лежит на VPS как untracked `caddy/local/*.caddy` (reset
|
||||
# --hard untracked не трогает), а в репозитории живёт только этот import.
|
||||
# Пустой glob для Caddy не ошибка — `caddy validate` проходит, на машинах без
|
||||
# локальных блоков строка просто ничего не делает.
|
||||
import caddy/local/*.caddy
|
||||
|
|
|
|||
4
caddy/local/.gitignore
vendored
Normal file
4
caddy/local/.gitignore
vendored
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
# Локальные site-блоки Caddy с секретами (см. import в конце Caddyfile).
|
||||
# Кладутся руками на VPS и намеренно не версионируются — в git только каталог.
|
||||
*
|
||||
!.gitignore
|
||||
|
|
@ -423,6 +423,10 @@ services:
|
|||
volumes:
|
||||
- ./Caddyfile:/etc/caddy/Caddyfile:ro
|
||||
- ./caddy/users.caddy.snippet:/etc/caddy/caddy/users.caddy.snippet:ro
|
||||
# Untracked локальные site-блоки (см. import в конце Caddyfile). Каталог
|
||||
# держится в git через caddy/local/.gitignore — иначе docker создал бы
|
||||
# отсутствующий bind-source сам, root-owned пустышкой.
|
||||
- ./caddy/local:/etc/caddy/caddy/local:ro
|
||||
- ./preview:/srv/preview:ro
|
||||
- caddy_data:/data
|
||||
- caddy_config:/config
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue