# đ Scripts de Transfert et Migration - Phase 3.4
Ce dossier contient les scripts pour transférer et migrer le projet Phase 3.4 vers un Raspberry Pi.
## đ Scripts Disponibles
### 1. `transfer_complete_to_pi.sh` (Linux/macOS)
Script bash pour transférer TOUS les fichiers du projet vers le Pi.
**Utilisation :**
```bash
# Avec paramÚtres par défaut (192.168.1.22, utilisateur beroute)
./scripts/transfer_complete_to_pi.sh
# Avec paramÚtres personnalisés
./scripts/transfer_complete_to_pi.sh 192.168.1.100 pi
```
### 2. `transfer_complete_to_pi.ps1` (Windows)
Script PowerShell pour transférer TOUS les fichiers du projet vers le Pi.
**Utilisation :**
```powershell
# Avec paramÚtres par défaut
.\scripts\transfer_complete_to_pi.ps1
# Avec paramÚtres personnalisés
.\scripts\transfer_complete_to_pi.ps1 -PiIP "192.168.1.100" -PiUser "pi"
```
### 3. `check_project_completeness.py`
Vérifie que tous les fichiers nécessaires sont présents avant transfert.
**Utilisation :**
```bash
python scripts/check_project_completeness.py
```
### 4. `migrate_pi.sh`
Script de migration complÚte sur le Pi (à exécuter SUR le Pi).
### 5. `deploy_pi.sh`
Script de déploiement Phase 3.4 (à exécuter SUR le Pi).
## đ Processus de Migration Complet
### Ătape 1: VĂ©rification Locale
```bash
# Vérifier que le projet est complet
python scripts/check_project_completeness.py
```
### Ătape 2: Transfert vers Pi
```bash
# Linux/macOS
./scripts/transfer_complete_to_pi.sh 192.168.1.22 beroute
# Windows
.\scripts\transfer_complete_to_pi.ps1 -PiIP "192.168.1.22" -PiUser "beroute"
```
### Ătape 3: Migration sur Pi
```bash
# Se connecter au Pi
ssh beroute@192.168.1.22
# Exécuter la migration
cd /home/beroute/homeassistant-mcp-server-v3.4
chmod +x scripts/migrate_pi.sh
./scripts/migrate_pi.sh
```
### Ătape 4: DĂ©ploiement sur Pi
```bash
# Déployer Phase 3.4
chmod +x scripts/deploy_pi.sh
./scripts/deploy_pi.sh
```
## â
Ce qui est Transféré
### Fichiers Inclus:
- â
Tous les fichiers Python (*.py)
- â
Structure web complĂšte (templates/, static/)
- â
Scripts de migration et déploiement
- â
Tests unitaires
- â
Documentation
- â
Configuration d'exemple (.env.example)
- â
Requirements.txt complet
### Fichiers Exclus:
- â Cache Python (__pycache__/, *.pyc)
- â Dossier .git/
- â Logs (*.log, logs/)
- â Configuration locale (.env)
- â Base de donnĂ©es locale (bridge_data.db)
- â Fichiers temporaires (*.tmp)
- â Dossiers IDE (.vscode/, .idea/)
## đ VĂ©rifications Automatiques
Les scripts effectuent automatiquement :
1. **Pré-transfert:**
- â
Complétude du projet local (27 fichiers critiques)
- â
Connectivité SSH vers le Pi
- â
Validation des dépendances
2. **Post-transfert:**
- â
Présence des fichiers critiques sur le Pi
- â
Structure web complĂšte (8+ templates)
- â
Taille et nombre de fichiers transférés
## đ Exemple de Sortie
```
=== Transfert Complet Phase 3.4 vers Raspberry Pi ===
đ Destination: beroute@192.168.1.22
đ Projet local: /path/to/homeassistant-mcp-server
đ Destination: /home/beroute/homeassistant-mcp-server-v3.4
đ 1. VĂRIFICATIONS PRĂALABLES
â
Vérification de la complétude du projet local...
â
Connectivité OK
đŠ 2. PRĂPARATION DU TRANSFERT
đ CrĂ©ation du rĂ©pertoire de destination...
đ 3. TRANSFERT DES FICHIERS
đ Transfert du projet complet...
â
Transfert terminé
đ 4. VĂRIFICATION POST-TRANSFERT
â
Tous les fichiers critiques sont présents
â
Structure web complÚte (8 templates trouvés)
đ 5. STATISTIQUES DE TRANSFERT
đ Taille transfĂ©rĂ©e: 2.1M
đ Nombre de fichiers: 54
đ TRANSFERT RĂUSSI !
```
## đ ïž DĂ©pannage
### ProblÚme: Connexion SSH échoue
**Solution:** Vérifier les clés SSH et la connectivité réseau
```bash
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
ssh-copy-id beroute@192.168.1.22
```
### ProblÚme: rsync non trouvé (Windows)
**Solution:** Le script utilise automatiquement scp comme alternative
### ProblĂšme: Fichiers manquants aprĂšs transfert
**Solution:** Relancer le script, il détectera et transférera les fichiers manquants
## đŻ Avantages des Nouveaux Scripts
1. **Complétude:** TransfÚre TOUS les fichiers nécessaires
2. **Sécurité:** Vérifie avant et aprÚs transfert
3. **Efficacité:** Utilise rsync pour les transferts incrémentaux
4. **Portabilité:** Scripts pour Linux/macOS ET Windows
5. **Intelligence:** Exclut automatiquement les fichiers inutiles
6. **Documentation:** Rapport détaillé des opérations
---
*Ces scripts résolvent définitivement le problÚme des fichiers manquants lors des migrations !*