deploy: add scripts/deploy/setup.sh to provision ~/.4nk_template/.env; docs: update deployment guide; changelog updated
This commit is contained in:
parent
d4b15a0752
commit
3702a517a6
@ -21,6 +21,7 @@ et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
|
|||||||
- CI: contrôle `bash-required` et prérequis `scripts/agents/run.sh` avant release-guard
|
- CI: contrôle `bash-required` et prérequis `scripts/agents/run.sh` avant release-guard
|
||||||
- CI: job `markdownlint` pour contrôler les lints Markdown (MD013/MD024/MD036)
|
- CI: job `markdownlint` pour contrôler les lints Markdown (MD013/MD024/MD036)
|
||||||
- CI: job `release-create` pour publier une release via l’API Gitea (secret `RELEASE_TOKEN`)
|
- CI: job `release-create` pour publier une release via l’API Gitea (secret `RELEASE_TOKEN`)
|
||||||
|
- Script de déploiement: `scripts/deploy/setup.sh` (provisionnement `~/.4nk_template/.env` sécurisé)
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
- Documentation projet réécrite à partir des modèles `docs/templates/**` (générique, non applicative)
|
- Documentation projet réécrite à partir des modèles `docs/templates/**` (générique, non applicative)
|
||||||
|
@ -12,6 +12,19 @@
|
|||||||
- Déploiement: pipeline CI dédié
|
- Déploiement: pipeline CI dédié
|
||||||
- Validation: smoke checks, santé, métriques
|
- Validation: smoke checks, santé, métriques
|
||||||
|
|
||||||
|
## Bootstrap d’environnement local
|
||||||
|
|
||||||
|
- Script d’installation: `scripts/deploy/setup.sh`
|
||||||
|
- Crée `~/.4nk_template/` (chmod 700) et `~/.4nk_template/.env` (chmod 600)
|
||||||
|
- Copie depuis `scripts/env/.env.template` si présent, sinon génère un modèle
|
||||||
|
- À compléter: `OPENAI_API_KEY`, `OPENAI_MODEL`, `RELEASE_TOKEN`, `GITEA_BASE_URL` (si custom)
|
||||||
|
|
||||||
|
Exécution:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bash scripts/deploy/setup.sh
|
||||||
|
```
|
||||||
|
|
||||||
## Rollback
|
## Rollback
|
||||||
- Version précédente prête, compatibilité des données
|
- Version précédente prête, compatibilité des données
|
||||||
- Critères d’activation, procédure documentée
|
- Critères d’activation, procédure documentée
|
||||||
|
40
scripts/deploy/setup.sh
Normal file
40
scripts/deploy/setup.sh
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
ENV_DIR="${HOME}/.4nk_template"
|
||||||
|
ENV_FILE="${ENV_DIR}/.env"
|
||||||
|
TEMPLATE_IN_REPO="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/env/.env.template"
|
||||||
|
|
||||||
|
mkdir -p "${ENV_DIR}"
|
||||||
|
chmod 700 "${ENV_DIR}" || true
|
||||||
|
|
||||||
|
if [[ -f "${ENV_FILE}" ]]; then
|
||||||
|
echo "Env déjà présent: ${ENV_FILE}" >&2
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -f "${TEMPLATE_IN_REPO}" ]]; then
|
||||||
|
cp "${TEMPLATE_IN_REPO}" "${ENV_FILE}"
|
||||||
|
else
|
||||||
|
cat >"${ENV_FILE}" <<'EOF'
|
||||||
|
# Fichier d'exemple d'environnement pour 4NK_template
|
||||||
|
# Copiez ce fichier vers ~/.4nk_template/.env puis complétez les valeurs.
|
||||||
|
# Ne committez jamais de fichier contenant des secrets.
|
||||||
|
|
||||||
|
# OpenAI (agents IA)
|
||||||
|
OPENAI_API_KEY=
|
||||||
|
OPENAI_MODEL=
|
||||||
|
OPENAI_API_BASE=https://api.openai.com/v1
|
||||||
|
OPENAI_TEMPERATURE=0.2
|
||||||
|
|
||||||
|
# Gitea (release via API)
|
||||||
|
GITEA_BASE_URL=https://git.4nkweb.com
|
||||||
|
RELEASE_TOKEN=
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
|
chmod 600 "${ENV_FILE}" || true
|
||||||
|
echo "Fichier créé: ${ENV_FILE}. Complétez les valeurs requises (ex: OPENAI_API_KEY, OPENAI_MODEL, RELEASE_TOKEN)." >&2
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user