Application qui automatise la mise en ligne d’un nouveau site sur mon Raspberry Pi 5. Au lieu d’enchaîner les étapes à la main, elle orchestre une cascade complète en un clic.
Cascade de provisioning
- Dépôt GitHub, création vierge ou depuis template.
- DNS A Cloudflare, enregistrement pointant sur le Pi.
- Nginx Proxy Manager, certificat Let’s Encrypt et HTTPS forcé.
- Workflow GitHub Actions, injecté dans le dépôt.
Fiabilité
- Logs en temps réel, streamés via Server-Sent Events.
- Rollback automatique, en cas d’échec d’une étape, les opérations déjà effectuées sont annulées.
Architecture
- Backend FastAPI async, httpx pour les API externes.
- Frontend HTML/CSS/JS vanilla.
- Zéro dépendance SaaS, tout l’état et les secrets vivent sur le Pi via
.env.
Conteneurisé (Docker HEALTHCHECK), CI/CD avec tests + déploiement SSH/rsync. Un outil d’infra interne qui transforme « créer un nouveau site » en un clic.
Application that automates the deployment of a new site on my Raspberry Pi 5. Instead of running through the steps by hand, it orchestrates a complete cascade in one click.
Provisioning cascade
- GitHub repo, created blank or from a template.
- Cloudflare A record, pointing to the Pi.
- Nginx Proxy Manager, Let’s Encrypt certificate and forced HTTPS.
- GitHub Actions workflow, injected into the repo.
Reliability
- Real-time logs, streamed via Server-Sent Events.
- Automatic rollback, if a step fails, the operations already performed are reverted.
Architecture
- Async FastAPI backend, httpx for external APIs.
- Vanilla HTML/CSS/JS frontend.
- Zero SaaS dependency, all state and secrets live on the Pi via
.env.
Containerized (Docker HEALTHCHECK), CI/CD with tests + SSH/rsync deployment. An internal infra tool that turns “create a new site” into one click.