Checkpoint: Correction des scripts de déploiement pour utiliser le bon nom de répertoire :

**Modifications apportées** :

1. **backup-before-update.sh** :
   - APP_DIR: /var/www/formation-manager-itinova
   - BACKUP_DIR: /var/backups/formation-manager-itinova

2. **update-app.sh** :
   - APP_DIR: /var/www/formation-manager-itinova
   - SERVICE_NAME: formation-manager-itinova

3. **GUIDE_MISE_A_JOUR.md** :
   - Tous les chemins mis à jour vers formation-manager-itinova
   - Tous les noms de service corrigés

4. **README.md** :
   - Documentation mise à jour avec les bons chemins
   - Exemples corrigés

5. **Nouveau package créé** :
   - formation-manager-update-20251127_095935.tar.gz (2.6M)
   - Prêt pour déploiement sur le serveur VPS
This commit is contained in:
Manus Sandbox
2025-11-27 10:01:47 -05:00
parent 2ae8592480
commit 21439c7af1
7 changed files with 65 additions and 57 deletions

View File

@@ -71,10 +71,10 @@ Le script va automatiquement:
```bash
# Vérifier le statut du service
sudo systemctl status formation-manager
sudo systemctl status formation-manager-itinova
# Voir les logs en temps réel
sudo journalctl -u formation-manager -f
sudo journalctl -u formation-manager-itinova -f
# Tester l'application dans le navigateur
# Ouvrir: http://votre-domaine.com
@@ -93,19 +93,19 @@ sudo ./deployment-scripts/backup-before-update.sh
### 2. Arrêter le service
```bash
sudo systemctl stop formation-manager
sudo systemctl stop formation-manager-itinova
```
### 3. Sauvegarder la configuration
```bash
sudo cp /var/www/formation-manager/.env /tmp/.env.backup
sudo cp /var/www/formation-manager-itinova/.env /tmp/.env.backup
```
### 4. Copier les nouveaux fichiers
```bash
cd /var/www/formation-manager
cd /var/www/formation-manager-itinova
sudo find . -mindepth 1 -maxdepth 1 ! -name '.env' ! -name 'node_modules' -exec rm -rf {} +
sudo cp -r /tmp/formation-manager-itinova/* .
```
@@ -113,13 +113,13 @@ sudo cp -r /tmp/formation-manager-itinova/* .
### 5. Restaurer la configuration
```bash
sudo cp /tmp/.env.backup /var/www/formation-manager/.env
sudo cp /tmp/.env.backup /var/www/formation-manager-itinova/.env
```
### 6. Installer les dépendances
```bash
cd /var/www/formation-manager
cd /var/www/formation-manager-itinova
sudo pnpm install --prod
```
@@ -132,8 +132,8 @@ sudo pnpm db:push
### 8. Redémarrer le service
```bash
sudo systemctl start formation-manager
sudo systemctl status formation-manager
sudo systemctl start formation-manager-itinova
sudo systemctl status formation-manager-itinova
```
## 🔄 Restauration d'une sauvegarde (Rollback)
@@ -143,26 +143,26 @@ Si la mise à jour pose problème, vous pouvez restaurer une sauvegarde:
### 1. Lister les sauvegardes disponibles
```bash
ls -lh /var/backups/formation-manager/
ls -lh /var/backups/formation-manager-itinova/
```
### 2. Choisir une sauvegarde
```bash
# Exemple: backup_20240119_143022
BACKUP_DIR="/var/backups/formation-manager/backup_20240119_143022"
BACKUP_DIR="/var/backups/formation-manager-itinova/backup_20240119_143022"
```
### 3. Arrêter le service
```bash
sudo systemctl stop formation-manager
sudo systemctl stop formation-manager-itinova
```
### 4. Restaurer les fichiers
```bash
cd /var/www/formation-manager
cd /var/www/formation-manager-itinova
sudo rm -rf *
sudo tar -xzf $BACKUP_DIR/app_files.tar.gz -C .
```
@@ -170,7 +170,7 @@ sudo tar -xzf $BACKUP_DIR/app_files.tar.gz -C .
### 5. Restaurer la configuration
```bash
sudo cp $BACKUP_DIR/.env.backup /var/www/formation-manager/.env
sudo cp $BACKUP_DIR/.env.backup /var/www/formation-manager-itinova/.env
```
### 6. Restaurer la base de données (optionnel)
@@ -189,8 +189,8 @@ rm /tmp/restore.sql
### 7. Redémarrer le service
```bash
sudo systemctl start formation-manager
sudo systemctl status formation-manager
sudo systemctl start formation-manager-itinova
sudo systemctl status formation-manager-itinova
```
## 📝 Nouveautés de cette version
@@ -211,19 +211,19 @@ Aucune migration majeure dans cette version. Le script `pnpm db:push` synchronis
```bash
# Voir les logs d'erreur
sudo journalctl -u formation-manager -n 100 --no-pager
sudo journalctl -u formation-manager-itinova -n 100 --no-pager
# Vérifier les permissions
sudo chown -R www-data:www-data /var/www/formation-manager
sudo chmod -R 755 /var/www/formation-manager
sudo chmod 600 /var/www/formation-manager/.env
sudo chown -R www-data:www-data /var/www/formation-manager-itinova
sudo chmod -R 755 /var/www/formation-manager-itinova
sudo chmod 600 /var/www/formation-manager-itinova/.env
```
### Erreur de connexion à la base de données
```bash
# Vérifier le fichier .env
sudo cat /var/www/formation-manager/.env | grep DATABASE_URL
sudo cat /var/www/formation-manager-itinova/.env | grep DATABASE_URL
# Tester la connexion MySQL
mysql -h HOST -u USER -p -e "SELECT 1;"
@@ -243,7 +243,7 @@ sudo kill -9 PID
```bash
# Réinitialiser les permissions
cd /var/www/formation-manager
cd /var/www/formation-manager-itinova
sudo chown -R www-data:www-data .
sudo chmod -R 755 .
sudo chmod 600 .env
@@ -253,13 +253,13 @@ sudo chmod 600 .env
En cas de problème:
1. **Vérifier les logs**: `sudo journalctl -u formation-manager -f`
2. **Consulter la documentation**: Voir les guides dans `/var/www/formation-manager/deployment-package/`
1. **Vérifier les logs**: `sudo journalctl -u formation-manager-itinova -f`
2. **Consulter la documentation**: Voir les guides dans `/var/www/formation-manager-itinova/deployment-package/`
3. **Restaurer une sauvegarde**: Suivre la procédure de rollback ci-dessus
## ✅ Checklist post-mise à jour
- [ ] Le service est démarré: `sudo systemctl status formation-manager`
- [ ] Le service est démarré: `sudo systemctl status formation-manager-itinova`
- [ ] L'application est accessible dans le navigateur
- [ ] La connexion fonctionne (test avec un utilisateur admin)
- [ ] Les séquences s'affichent correctement
@@ -271,16 +271,16 @@ En cas de problème:
```bash
# Voir les logs en temps réel
sudo journalctl -u formation-manager -f
sudo journalctl -u formation-manager-itinova -f
# Redémarrer le service
sudo systemctl restart formation-manager
sudo systemctl restart formation-manager-itinova
# Voir le statut
sudo systemctl status formation-manager
sudo systemctl status formation-manager-itinova
# Voir les dernières erreurs
sudo journalctl -u formation-manager -p err -n 50
sudo journalctl -u formation-manager-itinova -p err -n 50
# Espace disque
df -h

View File

@@ -76,10 +76,10 @@ sudo ./deployment-scripts/update-app.sh
```bash
# Vérifier le statut
sudo systemctl status formation-manager
sudo systemctl status formation-manager-itinova
# Voir les logs
sudo journalctl -u formation-manager -f
sudo journalctl -u formation-manager-itinova -f
# Tester dans le navigateur
# Ouvrir: http://votre-domaine.com
@@ -98,7 +98,7 @@ sudo journalctl -u formation-manager -f
- Crée un fichier d'information sur la sauvegarde
- Conserve les 10 dernières sauvegardes (supprime les plus anciennes)
**Emplacement des sauvegardes**: `/var/backups/formation-manager/`
**Emplacement des sauvegardes**: `/var/backups/formation-manager-itinova/`
**Exemple d'utilisation**:
```bash
@@ -109,15 +109,15 @@ sudo ./backup-before-update.sh
```
=== Sauvegarde avant mise à jour ===
Date: 2024-01-19 14:30:22
Répertoire application: /var/www/formation-manager
Répertoire sauvegarde: /var/backups/formation-manager
Répertoire application: /var/www/formation-manager-itinova
Répertoire sauvegarde: /var/backups/formation-manager-itinova
Création du répertoire de sauvegarde...
Sauvegarde des fichiers de l'application...
✓ Fichiers de l'application sauvegardés
...
=== Sauvegarde terminée avec succès ===
Emplacement: /var/backups/formation-manager/backup_20240119_143022
Emplacement: /var/backups/formation-manager-itinova/backup_20240119_143022
Taille: 45M
```
@@ -140,8 +140,8 @@ Taille: 45M
**Prérequis**:
- Exécuter avec sudo/root
- L'application doit être installée dans `/var/www/formation-manager`
- Le service doit s'appeler `formation-manager`
- L'application doit être installée dans `/var/www/formation-manager-itinova`
- Le service doit s'appeler `formation-manager-itinova`
**Exemple d'utilisation**:
```bash
@@ -155,7 +155,7 @@ sudo ./update-app.sh
╚════════════════════════════════════════════════════════════╝
Date: 2024-01-19 14:35:10
Répertoire: /var/www/formation-manager
Répertoire: /var/www/formation-manager-itinova
Voulez-vous continuer avec la mise à jour ? [y/N]: y
@@ -217,24 +217,24 @@ Si vous devez restaurer une sauvegarde après une mise à jour problématique:
```bash
# 1. Lister les sauvegardes
ls -lh /var/backups/formation-manager/
ls -lh /var/backups/formation-manager-itinova/
# 2. Arrêter le service
sudo systemctl stop formation-manager
sudo systemctl stop formation-manager-itinova
# 3. Restaurer les fichiers
cd /var/www/formation-manager
cd /var/www/formation-manager-itinova
sudo rm -rf *
sudo tar -xzf /var/backups/formation-manager/backup_YYYYMMDD_HHMMSS/app_files.tar.gz -C .
sudo tar -xzf /var/backups/formation-manager-itinova/backup_YYYYMMDD_HHMMSS/app_files.tar.gz -C .
# 4. Restaurer .env
sudo cp /var/backups/formation-manager/backup_YYYYMMDD_HHMMSS/.env.backup .env
sudo cp /var/backups/formation-manager-itinova/backup_YYYYMMDD_HHMMSS/.env.backup .env
# 5. Restaurer la base de données (si nécessaire)
gunzip -c /var/backups/formation-manager/backup_YYYYMMDD_HHMMSS/database.sql.gz | mysql -h HOST -u USER -p DATABASE
gunzip -c /var/backups/formation-manager-itinova/backup_YYYYMMDD_HHMMSS/database.sql.gz | mysql -h HOST -u USER -p DATABASE
# 6. Redémarrer
sudo systemctl start formation-manager
sudo systemctl start formation-manager-itinova
```
## 📝 Configuration
@@ -244,9 +244,9 @@ sudo systemctl start formation-manager
Les scripts utilisent ces chemins par défaut:
```bash
APP_DIR="/var/www/formation-manager" # Répertoire de l'application
BACKUP_DIR="/var/backups/formation-manager" # Répertoire des sauvegardes
SERVICE_NAME="formation-manager" # Nom du service systemd
APP_DIR="/var/www/formation-manager-itinova" # Répertoire de l'application
BACKUP_DIR="/var/backups/formation-manager-itinova" # Répertoire des sauvegardes
SERVICE_NAME="formation-manager-itinova" # Nom du service systemd
```
### Personnalisation
@@ -273,7 +273,7 @@ SERVICE_NAME="votre-service"
### Sauvegardes
- Les sauvegardes sont conservées dans `/var/backups/formation-manager/`
- Les sauvegardes sont conservées dans `/var/backups/formation-manager-itinova/`
- Seules les 10 dernières sauvegardes sont conservées
- Chaque sauvegarde inclut: fichiers + .env + base de données
- Pensez à sauvegarder régulièrement les sauvegardes importantes ailleurs
@@ -313,13 +313,13 @@ sudo ./update-app.sh
```bash
# Voir les logs
sudo journalctl -u formation-manager -n 100
sudo journalctl -u formation-manager-itinova -n 100
# Vérifier la configuration
sudo systemctl status formation-manager
sudo systemctl status formation-manager-itinova
# Vérifier les permissions
sudo chown -R www-data:www-data /var/www/formation-manager
sudo chown -R www-data:www-data /var/www/formation-manager-itinova
```
### Erreur de base de données
@@ -329,7 +329,7 @@ sudo chown -R www-data:www-data /var/www/formation-manager
mysql -h HOST -u USER -p -e "SELECT 1;"
# Vérifier le fichier .env
cat /var/www/formation-manager/.env | grep DATABASE_URL
cat /var/www/formation-manager-itinova/.env | grep DATABASE_URL
```
## 📞 Support

View File

@@ -17,8 +17,8 @@ YELLOW='\033[1;33m'
NC='\033[0m' # No Color
# Configuration
APP_DIR="/var/www/formation-manager"
BACKUP_DIR="/var/backups/formation-manager"
APP_DIR="/var/www/formation-manager-itinova"
BACKUP_DIR="/var/backups/formation-manager-itinova"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_NAME="backup_${TIMESTAMP}"

View File

@@ -17,9 +17,9 @@ BLUE='\033[0;34m'
NC='\033[0m' # No Color
# Configuration
APP_DIR="/var/www/formation-manager"
APP_DIR="/var/www/formation-manager-itinova"
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SERVICE_NAME="formation-manager"
SERVICE_NAME="formation-manager-itinova"
echo -e "${BLUE}╔════════════════════════════════════════════════════════════╗${NC}"
echo -e "${BLUE}║ Mise à jour Formation Manager Itinova ║${NC}"