Blog
Joan Galtés i Moreno

Ansible Drupal: la herramienta definitiva para mejorar tu flujo de despliegues a producción

La herramienta Ansible Drupal, creada por webfer
Descubre Ansible Drupal de webfer, una herramienta que te ayuda a automatizar tareas repetitivas y mejorar la manera de hacer despliegues a producción de tu Drupal.

Durante los últimos meses hemos estado colaborando con webfer para hacer realidad un proyecto de integración entre Ansible y Drupal, y ahora nos complace presentaros el resultado: Ansible Drupal, una herramienta para automatizar los despliegues de vuestros sitios desarrollados con Drupal 10.

La herramienta presenta una base muy sólida sobre la cual se puede escalar la aplicación y personalizarla según las necesidades del proyecto.

Para empezar a usarla, solo tenéis que descargarla e instalarla, mediante este comando de terminal:

mkdir -p ~/.bin && curl -o ~/.bin/ansible-installer.sh https://raw.githubusercontent.com/webfer/ansible-drupal/main/scripts/ansible-installer.sh && source ~/.bin/ansible-installer.sh && autorun

Una vez instalada, recargad vuestra terminal y tendréis a vuestra disposición dos comandos principales: ansible-install y ansible-deploy, que comentaremos más adelante.

↑ Tornar a dalt

Instalación en vuestro proyecto con ansible-install

Ejecutad este comando en la raíz de vuestro proyecto, fuera de la raíz del propio Drupal. Si trabajáis con git, ejecutadlo preferiblemente estando en la rama main de vuestro proyecto para evitar conflictos entre el repositorio de vuestro proyecto y el de Ansible Drupal.

Este comando añadirá de forma automática a vuestro proyecto todos los archivos y carpetas necesarios para integrar Ansible Drupal en vuestro proyecto.

Antes de continuar, sin embargo, hay que tener en cuenta que esta aplicación es una solución específica a una necesidad específica. Es cierto que representa un buen punto de partida, pero seguramente no se ajuste de manera exacta a vuestras necesidades, tales como las rutas de vuestro servidor, variables de entorno y cosas por el estilo, las cuales deberán ajustarse manualmente antes de continuar con el siguiente paso. 

Os recomendamos echar un vistazo a los diferentes archivos para acabar de ajustarlo todo a vuestras necesidades y leer la documentación oficial que encontraréis en su página de GitHub.

↑ Tornar a dalt

Despliegue de vuestro Drupal con ansible-deploy

Este comando es el encargado de realizar los despliegues. La aplicación está en constante evolución, pero a día de hoy cuenta con una serie de opciones para afinar más en vuestros despliegues:

  • --stage, -s Desplegará vuestro sitio con una basic auth mediante la creación de un archivo .htpasswd. Muy útil si el entorno de destino es un entorno de pruebas protegido por contraseña.
  • --live, -l Desplegará vuestro Drupal sin la basic auth mencionada en la opción anterior.
  • --install, -i Realizará una instalación desde cero, con una importación de la base de datos, de la cual deberéis tener una copia en la carpeta /sql de vuestro proyecto.
  • --update, -u Desplegará nuevas versiones de vuestro código y actualizará la base de datos mediante la importación de vuestra configuración, la cual deberéis haber exportado previamente en vuestro entorno de desarrollo.

Así pues, estas serían las cuatro variantes disponibles de despliegue en el momento de la publicación de este artículo:

ansible-deploy --stage --install
ansible-deploy --stage --update
ansible-deploy --live --install
ansible-deploy --live --update

O, los mismos comandos en sus versiones abreviadas:

ansible-deploy -s -i
ansible-deploy -s -u
ansible-deploy -l -i
ansible-deploy -l -u
↑ Tornar a dalt

Contribuciones

Como último comentario, deciros que si encontráis este proyecto interesante para vuestro día a día con Drupal, sentíos libres de contribuir mediante la sección de issues o hacer un fork para acabar de ajustarlo a vuestras necesidades. 

Tanto webfer como desde Ariane webdesign esperamos que esta herramienta os sea de utilidad y os ayude a automatizar y mejorar vuestro flujo de trabajo.

↑ Tornar a dalt

Sobre el autor

Joan Galtés i Moreno

Desarrollador full-stack, especializado en Drupal desde 2008. Me gusta concebir y desarrollar tanto el back-end como el front-end en todos mis proyectos. Entusiasta de las nuevas tecnologías, con un buen dominio de PHP, MySQL, Git, Javascript, HTML 5, SASS y CSS 3, poniendo siempre el énfasis en la usabilidad y la accesibilidad en todo aquello que desarrollo.

Compartir

Deja tu comentario