Case study

Pipeline CI/CD su Proxmox

Deploy fatti a mano su VM Proxmox: ogni rilascio era un evento, lo staging e la produzione divergevano nel tempo, e ricostruire un ambiente da zero richiedeva la memoria di chi l'aveva configurato la prima volta.

JenkinsOpenTofuAnsibleSemaphoreProxmoxDocker
GitHub Articoli correlati →

Contesto

Infrastruttura on-prem basata su Proxmox, senza managed services cloud disponibili. Il vincolo era automatizzare senza riscrivere le applicazioni e senza migrare a una piattaforma diversa.

Pilastro applicato

Automatizzare

Cosa ho fatto

  • Provisioning delle VM via OpenTofu e cloud-init, con configurazione versionata su Git
  • Orchestrazione del flusso end-to-end con Jenkins: trigger, gating, propagazione tra stage
  • Deploy applicativo via playbook Ansible eseguiti da Semaphore, idempotenti e replicabili
  • Stack applicativo containerizzato (Docker Compose) per ridurre le differenze tra ambienti

Risultato

Il deploy manuale è scomparso. Staging e produzione partono dalla stessa configurazione versionata: il drift, quando capita, è visibile in un diff Git invece che in un confronto tra screenshot. Ricostruire un ambiente da zero è un job da lanciare, non un sapere tribale.

Pipeline CI/CD completa per ambienti su VM Proxmox. Jenkins orchestra il flusso: OpenTofu provisiona le VM via cloud-init, Semaphore triggera i playbook Ansible per il deploy dello stack Docker Compose. Ho progettato l’architettura per eliminare il deploy manuale e il drift tra staging e produzione.

Stai affrontando qualcosa di simile?

Se questo case study tocca un problema che hai sul tavolo, parliamone in una discovery call gratuita di 30 minuti.