- Ajout scripts/ reproduisant chaque étape (secrets, render config, up CLI, init Garage, bootstrap prod, admin, vérif E2E, adoption Coolify, backup) - Templates envsubst (config.yml, garage.toml, cantaloupe.properties) + .example - deploy.conf (config non-secrète : domaine, versions, uuids Coolify) - docs/ : ARCHITECTURE, TROUBLESHOOTING (11 problèmes/fixes), RUNBOOK, SECURITY - Makefile (raccourcis) - .gitignore + retrait du suivi de .env/.secrets.env/config.yml/garage.toml (fichiers conservés sur disque ; secrets restent dans l'historique -> voir SECURITY.md) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
28 lines
1.1 KiB
Bash
Executable File
28 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Rend config.yml, garage.toml, cantaloupe.properties et .env à partir des templates + secrets.
|
|
source "$(dirname "$0")/lib.sh"
|
|
load_secrets
|
|
|
|
command -v envsubst >/dev/null || { echo "❌ 'envsubst' requis (paquet gettext)"; exit 1; }
|
|
|
|
log "Rendu des fichiers de configuration (DOMAIN=$DOMAIN)…"
|
|
export DOMAIN SECRET_KEY PG_PASS GK_ID GK_SECRET GARAGE_RPC GARAGE_ADMIN_TOKEN
|
|
|
|
envsubst '${DOMAIN} ${SECRET_KEY} ${PG_PASS} ${GK_ID} ${GK_SECRET}' \
|
|
< "$ROOT/templates/config.yml.tmpl" > "$ROOT/config.yml"
|
|
envsubst '${DOMAIN} ${GARAGE_RPC} ${GARAGE_ADMIN_TOKEN}' \
|
|
< "$ROOT/templates/garage.toml.tmpl" > "$ROOT/garage.toml"
|
|
envsubst '${DOMAIN}' \
|
|
< "$ROOT/templates/cantaloupe.properties.tmpl" > "$ROOT/cantaloupe.properties"
|
|
|
|
cat > "$ROOT/.env" <<EOF
|
|
PG_PASS=${PG_PASS}
|
|
GK_ID=${GK_ID}
|
|
GK_SECRET=${GK_SECRET}
|
|
EOF
|
|
|
|
# Le backend tourne en uid 2000 : les fichiers montés doivent être lisibles (644).
|
|
chmod 644 "$ROOT/config.yml" "$ROOT/garage.toml" "$ROOT/cantaloupe.properties"
|
|
chmod 600 "$ROOT/.env"
|
|
ok "config.yml, garage.toml, cantaloupe.properties, .env générés."
|