feat : DATA_PATH configurable, DataGit auto-commit, UpdateChecker branche (v1.4.0)
- DATA_PATH : chemin /data hors document root, configurable via .env (fallback sur BASE_PATH/data si absent) - DataGit : auto-commit git sur toutes les écritures articles/livres (create, update, delete, meta, tags, fichiers, liens…) sauf autosave - UpdateChecker : getBranch() / getLastChecked() / clearCache(), branche configurable via FOLIO_UPDATE_BRANCH (plus de main hardcodé) - Admin dashboard : affiche la branche suivie, date du dernier contrôle, bouton Vérifier pour forcer le check sans attendre le TTL - CLAUDE.md : architecture DATA_PATH et flux de déploiement documentés Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
# CLAUDE.md
|
||||
|
||||
## Ce qu'est ce dépôt
|
||||
|
||||
**Folio** est un moteur de blog PHP.
|
||||
Ce répertoire est la **copie locale du dépôt Git** (`https://git.abonnel.fr/cedricAbonnel/folio`), branche DEV.
|
||||
Il contient uniquement le code du moteur — pas de données, pas de credentials.
|
||||
|
||||
## Architecture
|
||||
|
||||
| Répertoire local | Site distant | Rôle |
|
||||
|-----------------|-------------|------|
|
||||
| `~/Projects/folio/` | — | Copie du dépôt Folio (branche DEV). On code ici. |
|
||||
| `~/Projects/varlog/` | varlog.a5l.fr | Sync bidirectionnelle des articles varlog. Sert de site de test pour le moteur. |
|
||||
| `~/Projects/fr.abonnel.www/` | www.abonnel.fr | Sync bidirectionnelle des articles abonnel.fr. A aussi servi au déploiement initial. |
|
||||
|
||||
**abonnel.fr** utilise Folio mais se met à jour seul via son UpdateChecker interne (vérifie `version.txt` sur Gitea). Aucune action manuelle nécessaire côté serveur.
|
||||
|
||||
## Articles (`data/`)
|
||||
|
||||
Les articles ne sont pas versionnés dans ce dépôt. Ils ont leur propre git local dans chaque workspace site (`~/Projects/varlog/data/`, `~/Projects/fr.abonnel.www/data/`), synchronisé de façon bidirectionnelle avec le serveur distant.
|
||||
|
||||
## Modifier le moteur
|
||||
|
||||
Pour toute correction ou fonctionnalité : **créer un ticket et une PR**.
|
||||
|
||||
1. Coder ici dans `~/Projects/folio/` (branche feature)
|
||||
2. **Tester sur varlog.a5l.fr** :
|
||||
```bash
|
||||
~/Projects/varlog/scripts/sync.sh
|
||||
# puis tester sur http://varlog.acegrp.lan
|
||||
```
|
||||
3. Une fois validé, ouvrir une PR sur Gitea. Le commit doit inclure :
|
||||
- `public/version.txt` (bump semver)
|
||||
- `CHANGELOG.md` (entrée `### Ajouté / Corrigé / Modifié`)
|
||||
4. Merger la PR → abonnel.fr se met à jour automatiquement.
|
||||
|
||||
## Données articles (`DATA_PATH`)
|
||||
|
||||
Les articles sont stockés dans un répertoire **hors du dépôt Folio**, configurable via `DATA_PATH` dans `.env`.
|
||||
|
||||
| Environnement | Chemin local | Chemin serveur |
|
||||
|--------------|-------------|----------------|
|
||||
| varlog | `~/Projects/varlog-data/` | `/srv/data/folio` |
|
||||
| abonnel.fr | `~/Projects/fr.abonnel.www-data/` | `/srv/data/folio` |
|
||||
|
||||
Les scripts de sync (`pull-data.sh`, `push-data.sh`, `sync.sh`) utilisent `DATA_DIR` (overridable via env) pointant vers ces chemins locaux.
|
||||
|
||||
## Asymétrie de déploiement moteur
|
||||
|
||||
| Site | Mécanisme | Raison |
|
||||
|------|-----------|--------|
|
||||
| varlog (test) | rsync depuis `~/Projects/folio/` | Itération rapide, pas de contrainte de stabilité |
|
||||
| abonnel.fr (prod) | `git pull origin main` sur le serveur | Contrôle via PR/merge, UpdateChecker autonome |
|
||||
|
||||
Pour initialiser git sur un serveur abonnel.fr déployé via rsync : `scripts/git-init-remote.sh`
|
||||
|
||||
## Ne pas mettre ici
|
||||
|
||||
- `.env` (credentials → dans chaque workspace site)
|
||||
- `data/` (articles → dans chaque workspace site)
|
||||
- `vendor/` (non versionné)
|
||||
Reference in New Issue
Block a user