Si no conocéis Vagrant ni Puppet este post debería ser un eye-opener para vosotros.

La primera herramienta pretende hacer fácil y rápido el desplegar boxes de desarrollo para suplir con las increíbles demandas de eficiencia y tiempo de respuesta del movimiento devOps. Permite desplegar máquinas de desarrollo en cuestión de minutos de forma muy muy fácil. Una tecnología a tener  muy en cuenta y con la que merece la pena pelearse un poco.

La segunda es Puppet, que es un sistema que permite -mediante un lenguaje declarativo basado en Ruby- controlar el estado de una flota de máquinas, pudiendo actualizar cualquier cosa de ellas, desde ficheros, a paquetería, procesos, cronjobs, scripts, usuarios, configuraciones varias… Puppet permite no solo centralizar el control de la flota de máquinas para desplegar rápidamente cualquier cambio, sino que también puede usarse para tener un servidor levantado y configurado on the fly en apenas unos minutos.

¿Qué pasa cuando juntas las dos en una interfaz rápida e intuitiva escrita en PHP?, ¡pues que nace PuPHPet!

PuPHPet es una herramienta que nace con un solo propósito: permitir que alguien que no conozca Vagrant o Puppet pueda desplegar una máquina de desarrollo en segundos.

Funciona de la siguiente forma:

  1. El usuario especifica que requisitos va a tener su máquina.
  2. PuPHPet genera configuración de Vagrant y Puppet por nosotros y nos lo permite descargar.
  3. Hacemos un vagrant up y permitimos que la hechicería de estas dos herramientas haga el resto.
  4. ¡Voilá!, ya tenemos nuestra máquina de desarrollo.

Muy interesante y merecedor de un poco de vuestro tiempo, ¡garantizado!