[DevOps] Vagrant – Ambiente di sviluppo

Ormai esistono tantissimi framework di sviluppo, versioni di linguaggi e database. Lavoriamo contemporaneamente su progetti diversi con specifiche diverse e diventa difficile e complicato gestire ambienti di sviluppo parallelo.

Ci viene in aiuto Vagrant che unisce la potenza delle macchine virtuali (Virtualbox, AWS, VMWare) alla flessibilità di gestori di configurazione (Puppet e Chef) ci permettono di gestire configurazioni complesse delle macchine virtuali.
Abbiamo molta flessibilità in quanto sono già pronti diversi Vagrantfile per diversi ambienti, ad esempio:

  • Couchbase – https://github.com/couchbaselabs/vagrants
  • Apache + PHP – https://github.com/sapienza/vagrant-php-box
  • JBoss – https://github.com/lpiepiora/vagrant-jboss-as

Sono presenti diversi plugin per gestire provider esterni o altre configurazioni particolari:

  • AWS – https://github.com/mitchellh/vagrant-aws
  • Azure – https://github.com/MSOpenTech/vagrant-azure
  • Digital Ocean – https://github.com/smdahlen/vagrant-digitalocean

Gli sviluppatori non dovranno fare altro che scaricarsi la macchina pre-generata con all’interno tutti i dati necessari e le configurazioni necessarie. Verranno syncronizzate le cartelle tra la macchina fisica e quella virtuale cosi da permettere allo sviluppatore di non sconvolgere il normale flusso di sviluppo.

Sicuramente è un approccio che porta via più tempo ma permette di gestire ogni ambiente di sviluppo con box separati e permette di distribuire ambienti complicati con poco effort.

Start typing and press Enter to search

mobile app xamarin