Antecedentes
Tengo un equipo de control de calidad no técnico que tiene que hacer pruebas en aplicaciones iOS / Android para cada solicitud de extracción (PR) que crea mi equipo de back-end.
Pregunta
Esto es lo que quiero hacer: cada vez que un ingeniero de back-end crea un PR en bitbucket, me gustaría que un script implemente automáticamente el código de esa rama PR git en un subdominio de nuestro servidor de desarrollo que coincida con el problema JIRA creado.
Por ejemplo, suponga que el problema de jira de que las direcciones de PR es BAC-421, luego, tan pronto como el ingeniero crea un PR, el script implementa el código que creó en AWS EC2 para que el QA pueda apuntar sus aplicaciones a www.bac421.mydevdomain. com
¿Cuál es la mejor manera de hacer esto? Soy una nube técnica devops.
Actualización - Especificaciones del entorno
así que aquí hay una ruptura de nuestro entorno: el backend usa laravel 5.3, se implementa en AWS EC2, usamos forge para la implementación automática (nada lujoso ... solo ejecutamos este script:
cd /home/forge/default
git fetch --tags
git pull origin master
git describe
composer install --no-dev --no-interaction --prefer-dist --optimize-autoloader
echo "" | sudo -S service php7.1-fpm reload
if [ -f artisan ]
then
php artisan migrate --force
php artisan config:cache
php artisan queue:restart
fi
que ejecutamos tan pronto como fusionamos el desarrollo con la rama maestra), además de que no usamos ninguna herramienta de CI / CD, aunque estoy abierto a recomendaciones: el proveedor de DNS es GoDaddy, nuestro servidor de aplicaciones es nginx, nuestra base de datos está en un instancia RDS separada