docs : documenter la configuration sudoers pour le bouton Mettre à jour

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-15 18:26:16 +02:00
parent 556c2cfea9
commit ee2b8a4ac7
+34
View File
@@ -133,12 +133,46 @@ Ou créer directement `$DATA_PATH/site_settings.json` :
## Mise à jour
### Manuelle
```bash
git pull
composer install --no-dev
php database/migrate.php
```
### Via le bouton admin ("Mettre à jour")
L'interface d'administration propose un bouton **Mettre à jour** qui déclenche un déploiement complet (clone fresh, permissions, Composer, migrations SQL, répertoire de sessions). Ce bouton appelle `sudo /usr/local/bin/folio-upgrade.sh` depuis PHP (`www-data`).
**Configuration requise une fois sur chaque serveur :**
```bash
# 1. Installer le script (adapté à votre serveur)
sudo install -o root -m 750 /var/www/mon-site/scripts/server/folio-upgrade.sh \
/usr/local/bin/folio-upgrade.sh
# 2. Éditer APP_DIR et REPO_URL dans le script installé
sudo nano /usr/local/bin/folio-upgrade.sh
# 3. Autoriser www-data à l'exécuter sans mot de passe
echo "www-data ALL=(root) NOPASSWD: /usr/local/bin/folio-upgrade.sh" \
| sudo tee /etc/sudoers.d/folio-upgrade
sudo chmod 440 /etc/sudoers.d/folio-upgrade
# 4. Vérifier la syntaxe
sudo visudo -c
```
Le script est dans `scripts/server/folio-upgrade.sh`. Les deux variables à adapter en tête de fichier :
| Variable | Description |
|---|---|
| `APP_DIR` | Chemin absolu du document root (ex. `/var/www/mon-site`) |
| `REPO_URL` | URL du dépôt Git Folio |
Sans cette configuration, le bouton retourne une erreur `sudo: a password is required`.
## Structure du projet
```