feat: Version 3.5.2 - Configuration Stripe et gestion des immeubles

- Configuration complète Stripe pour les 3 environnements (DEV/REC/PROD)
  * DEV: Clés TEST Pierre (mode test)
  * REC: Clés TEST Client (mode test)
  * PROD: Clés LIVE Client (mode live)
- Ajout de la gestion des bases de données immeubles/bâtiments
  * Configuration buildings_database pour DEV/REC/PROD
  * Service BuildingService pour enrichissement des adresses
- Optimisations pages et améliorations ergonomie
- Mises à jour des dépendances Composer
- Nettoyage des fichiers obsolètes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
pierre
2025-11-09 18:26:27 +01:00
parent 21657a3820
commit 2f5946a184
812 changed files with 142105 additions and 25992 deletions

177
bao/DEPLOY.md Normal file
View File

@@ -0,0 +1,177 @@
# Guide de déploiement BAO
## Vue d'ensemble
BAO peut être utilisé de **deux façons** :
1. **Depuis le PC** : Via tunnels SSH vers les containers
2. **Sur les containers** : Connexion directe aux bases maria3/maria4
## Architecture des bases de données
### Environnement DVA
- Container : `IN3/dva-geo`
- Base de données : `IN3/maria3:3306``dva_geo`
- Credentials : `dva_geo_user` / `CBq9tKHj6PGPZuTmAHV7`
### Environnement RCA
- Container : `IN3/rca-geo`
- Base de données : `IN3/maria3:3306``rca_geo`
- Credentials : `rca_geo_user` / `UPf3C0cQ805LypyM71iW`
### Environnement PRA
- Container : `IN4/pra-geo`
- Base de données : `IN4/maria4:3306``pra_geo`
- Credentials : `pra_geo_user` / `d2jAAGGWi8fxFrWgXjOA`
## Déploiement
### 1. Déployer sur DVA (IN3/dva-geo)
```bash
cd /home/pierre/dev/geosector/bao
./deploy-bao.sh
```
**Ce que fait le script :**
- Crée une archive `bao-dva-YYYYMMDDHH.tar.gz` dans `/data/backup/geosector/bao`
- Transfère l'archive vers `IN3` (195.154.80.116)
- Déploie dans le container `dva-geo``/var/www/geosector/bao`
- Copie `config/.env.container` vers `config/.env`
- Configure les permissions (root:root)
- Rend tous les scripts exécutables
### 2. Déployer sur RECETTE (IN3/rca-geo)
```bash
cd /home/pierre/dev/geosector/bao
./deploy-bao.sh rca
```
**Même processus**, mais vers le container `rca-geo`.
### 3. Déployer sur PRODUCTION (IN4/pra-geo)
```bash
cd /home/pierre/dev/geosector/bao
./deploy-bao.sh pra
```
**Même processus**, mais vers le serveur `IN4` (51.159.7.190) et le container `pra-geo`.
## Utilisation après déploiement
### Connexion au container
```bash
# Pour RCA (exemple)
ssh -i ~/.ssh/id_rsa_mbpi root@195.154.80.116 'incus exec rca-geo -- bash'
```
### Lancer BAO
```bash
cd /var/www/geosector/bao
# Menu interactif
./bin/bao
# Ou directement un script
./bin/search-user rca dupont
./bin/decrypt-user rca 56930
./bin/list-operations rca --entite=662
```
## Configuration automatique
Le fichier `config/.env` est automatiquement créé depuis `config/.env.container` :
```ini
# Exemple pour RCA (connexion directe vers maria3)
RCA_DB_HOST=13.23.33.4
RCA_DB_PORT=3306
RCA_DB_NAME=rca_geo
RCA_DB_USER=rca_geo_user
RCA_DB_PASS=UPf3C0cQ805LypyM71iW
```
**Aucune configuration manuelle requise !**
## Sauvegardes
Les archives de déploiement sont conservées dans `/data/backup/geosector/bao` :
- `bao-dva-*.tar.gz` : Archives DVA
- `bao-rca-*.tar.gz` : Archives RCA
- `bao-pra-*.tar.gz` : Archives PRA
**Rétention** : Les 10 dernières archives par environnement sont conservées.
## Vérifications post-déploiement
Le script vérifie automatiquement :
- ✓ Présence de `config/.env`
- ✓ PHP disponible
- ✓ Extensions PHP (PDO, OpenSSL, mbstring)
## Rollback
En cas de problème, la sauvegarde est disponible sur le container :
```bash
# Se connecter au container
ssh -i ~/.ssh/id_rsa_mbpi root@195.154.80.116 'incus exec rca-geo -- bash'
# Restaurer depuis la sauvegarde
cd /var/www/geosector
rm -rf bao
mv bao_backup_YYYYMMDD_HHMMSS bao
```
## Différences PC vs Container
| Aspect | PC (local) | Container (distant) |
|--------|-----------|---------------------|
| Config | `.env.example` | `.env.container` |
| Connexion | Via tunnels SSH | Directe maria3/maria4 |
| Host DB | 127.0.0.1 | 13.23.33.4 |
| Port DB | 3307/3308/3309 | 3306 |
| Tunnels | Nécessaires | Non nécessaires |
## Troubleshooting
### Erreur de connexion à la base
```bash
# Tester la connexion depuis le container
mysql -h 13.23.33.4 -u rca_geo_user -p rca_geo -e "SELECT 1"
```
### Script non exécutable
```bash
cd /var/www/geosector/bao
chmod +x bin/*
```
### Mauvaise configuration
```bash
# Vérifier la config
cat config/.env
# Recopier depuis le template
cp config/.env.container config/.env
```
## Journal des déploiements
Tous les déploiements sont journalisés dans `~/.geo_deploy_history` :
```bash
tail -f ~/.geo_deploy_history
```
Exemple :
```
2025-01-18 14:30:00 - BAO deployed to RECETTE (rca-geo) - Archive: bao-rca-2025011814.tar.gz
```