- Python 59.1%
- JavaScript 14.8%
- Vue 11.5%
- Shell 10.8%
- HCL 2.8%
- Other 0.9%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
All checks were successful
Intégration / Contrôles statiques du dépôt (push) Successful in 9s
Intégration / Terraform — format, validité et lint (push) Successful in 30s
Intégration / Tableau de bord — dépendances, tests et construction (push) Successful in 46s
Intégration / Workflows — lint et audit de sécurité (push) Successful in 19s
Intégration / Checkov — audit de la configuration (push) Successful in 45s
Intégration / Tableau de bord — dépendances, tests et construction (pull_request) Successful in 46s
Intégration / Contrôles statiques du dépôt (pull_request) Successful in 9s
Intégration / Terraform — format, validité et lint (pull_request) Successful in 13s
Intégration / Checkov — audit de la configuration (pull_request) Successful in 17s
Intégration / Workflows — lint et audit de sécurité (pull_request) Successful in 17s
Intégration / Python — qualité, tests et dépendances (push) Successful in 6m31s
Intégration / Python — qualité, tests et dépendances (pull_request) Successful in 7m0s
Reviewed-on: https://10.105.200.41/g2/enervision/pulls/272 Reviewed-by: marvin <marvin@noreply.10.105.200.41> |
||
| .claude/skills | ||
| .forgejo | ||
| bin | ||
| db | ||
| docs | ||
| infra | ||
| packages/contracts | ||
| services | ||
| tests | ||
| .coveragerc | ||
| .gitattributes | ||
| .gitignore | ||
| .mailmap | ||
| CODEOWNERS | ||
| pytest.ini | ||
| README.md | ||
| requirements-dev.txt | ||
EnerVision — Smart Energy Optimizer
Plateforme de collecte, de prévision et de recommandation sur la consommation énergétique de sept sites industriels. Projet EADL, groupe 2, Nantes.
Organisation du dépôt
Dépôt unique. Le chemin est l'unité d'appartenance : chaque épreuve individuelle correspond à un répertoire, et la chaîne d'intégration ne rejoue que ce qui a changé.
| Chemin | Contenu | Épreuve servie |
|---|---|---|
services/collector/ |
Relève à la minute, rattrapage, zone bronze | EC05 |
services/etl/ |
Transformations du médaillon : imputation, qualité, zones argent et or, chargement en base | EC05 |
services/api/ |
Interface REST, authentification, moteur de règles | EC05 |
services/inference/ |
Modèle, service de prévision, surveillance de dérive | EC06 |
services/dashboard/ |
Interface web et sa couche serveur | EC05 |
packages/contracts/ |
Modèles partagés entre l'API et l'inférence | socle |
infra/compose/ |
Composition Docker, proxy, un seul plan de déploiement | EC04 |
infra/terraform/ |
Ressources Azure, état distant, budget | EC04 |
infra/ansible/ |
Configuration du serveur de la salle | EC04 |
db/migrations/ |
Migrations SQL : zone or dans public, socle d'authentification dans ops |
EC05 |
tests/ |
Unitaire et intégration ; contrôles de la chaîne dans tests/ci/. tests/e2e/ est réservé et vide, voir son README |
EC03 |
.forgejo/workflows/ |
Chaîne d'intégration et de livraison | EC03 |
docs/ |
Fiches de décision, manuels d'exploitation, journal | EC02 |
docs/data/ |
Architecture data : médaillon, pipeline ETL, règles d'imputation | EC05 |
Documentation par épreuve
Un document d'entrée par épreuve. Chacun dit ce qui tourne, où c'est dans le dépôt, comment le vérifier, et ce qui n'est pas livré.
| Épreuve | Document d'entrée | Pour aller plus loin |
|---|---|---|
| EC02 — management | docs/RAPPORT-EC02.md |
docs/journal.md, docs/BACKLOG.md, docs/adr/ |
| EC03 — intégration continue | docs/EC03-INTEGRATION-CONTINUE.md |
.forgejo/workflows/, tests/ci/, docs/runbooks/ci.md |
| EC04 — sécurisation | docs/RAPPORT-EC04-SECURISATION.md |
infra/ansible/, infra/terraform/, docs/runbooks/ |
| EC05 — chaîne de données | docs/EC05-CHAINE-DE-DONNEES.md |
docs/data/etl-pipeline.md, docs/GLOSSAIRE.md, docs/POSTGRESQL.md |
| EC06 — modèle et prévision | docs/EC06-MODELE-ET-PREVISION.md |
docs/adr/0013-prevision-h1-avec-reference-publiee.md, services/inference/ |
La recette, qui traverse les épreuves, est dans docs/RECETTE.md :
vingt-huit exigences éprouvées en jouant, avec leur verdict daté et ce que la
vérification n'a pas couvert.
Démarrer
git clone ssh://git@10.105.200.41:2222/g2/enervision.git
cd enervision
cp infra/compose/.env.example infra/compose/.env # à compléter, jamais commité
docker compose -f infra/compose/docker-compose.yml up -d
Noms d'hôte
Caddy sert les services du projet sur le port 443, séparés par nom d'hôte.
Aucun de ces noms n'est dans un DNS : ajouter cette ligne dans /etc/hosts
(Linux, macOS) ou C:\Windows\System32\drivers\etc\hosts sur chaque poste.
10.105.200.41 forge.g2.enervision app.g2.enervision grafana.g2.enervision
| Nom | Sert |
|---|---|
forge.g2.enervision |
la forge Forgejo |
app.g2.enervision |
le tableau de bord, et l'API sous /api |
grafana.g2.enervision |
Grafana (supervision métier) |
Le certificat est délivré par l'autorité interne de Caddy : le navigateur
avertit au premier accès, curl demande -k. Manuel : docs/runbooks/caddy.md.
Conventions
Branches : <prenom>/<numéro de l'issue>-<sujet>, par exemple justine/5-api-authentification.
Messages de commit : <zone>: <ce qui change>, par exemple collector: borne l'imputation à 30 minutes.
Un ticket par unité de travail, fermé avec sa preuve en commentaire.
Le détail est dans docs/CONVENTIONS.md.