alpinux.site.2026/README.md
Cédrix bc7e9f601b security: retire les configs serveur du dépôt public
Supprime tous les fichiers *.vhost.conf et *.service du suivi git.
Ils révèlent l'architecture interne (ports, chemins, utilisateurs système)
et sont désormais conservés localement dans infra/ (hors dépôt).

Sanitise les docs de déploiement et les .env.example :
- chemins système remplacés par des variables génériques
- ports internes retirés
- client IDs Keycloak remplacés par des placeholders

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 17:25:55 +02:00

2.8 KiB

org.alpinux.owni — Monorepo Alpinux

Dépôt unique de l'association Alpinux (LUG de Savoie).
Gitea : https://gitea.alpinux.org/alpinux.cedrica5l/alpinux.site.2026


Structure

Chaque sous-dossier correspond à un sous-domaine indépendant de alpinux.org.

org.alpinux.owni/
├── wiki/        → wiki.alpinux.org        MkDocs Material (documentation publique)
├── home/        → alpinux.org             Page d'accueil statique
├── dynamic/     → dynamic.alpinux.org     Flask — quiz et jeux (public + membres)
├── admin/       → admin.alpinux.org       Flask — interface d'administration
├── static/      → static.alpinux.org      CDN assets : logos, favicons, images OG
├── portail/     → portail.alpinux.org     Portail membres (ISPConfig, Nextcloud…)
└── feedback/    → feedback.alpinux.org    Formulaire de retours (à construire)

Les configurations serveur (Apache, systemd) sont gérées séparément et ne sont pas versionnées.


Projets indépendants, liés par l'infrastructure

Chaque projet :

  • utilise AlpID (SSO Keycloak) pour l'authentification quand nécessaire
  • a son propre environnement Python (venv/) et son fichier .env (non versionés)

Les projets sont liés par le SSO partagé, le serveur commun, et l'identité visuelle (logo depuis static.alpinux.org).


Convention git et Claude

Travailler dans le sous-dossier du projet concerné, pas à la racine du dépôt.

cd wiki/      # pour modifier le wiki ou MkDocs
cd dynamic/   # pour modifier l'appli quiz
cd admin/     # pour modifier l'interface admin

De même, lorsqu'on utilise Claude Code (ou tout autre outil IA) :
lancer Claude depuis le sous-dossier du projet pour que le contexte soit limité à ce projet.

cd ~/Projects/org.alpinux.owni/wiki && claude
cd ~/Projects/org.alpinux.owni/admin && claude

Démarrage rapide par projet

wiki (wiki.alpinux.org)

cd wiki
python3 scripts/build-assets.py     # génère docs/assets/alpinux-logo.png
pip install mkdocs-material
mkdocs serve                         # dev local
mkdocs build --strict                # build de prod dans site/

dynamic (dynamic.alpinux.org)

cd dynamic
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env && nano .env    # renseigner les clés AlpID
flask run

admin (admin.alpinux.org)

cd admin
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env && nano .env    # renseigner les clés AlpID
flask run

Déploiement serveur

Voir wiki/docs/technique/ pour la documentation.
Les fichiers de configuration serveur sont conservés localement hors dépôt.