fundo
Eu tenho uma equipe de controle de qualidade não técnico que precisa fazer testes em aplicativos iOS / Android para cada solicitação de recebimento (PR) criada pela minha equipe de back-end.
Questão
É isso que eu quero fazer: sempre que um engenheiro de back-end cria um PR no bitbucket, eu gostaria que um script implantasse automaticamente o código dessa ramificação PR git em um subdomínio do servidor de desenvolvimento que corresponda ao problema do JIRA criado.
Por exemplo, suponha que o problema de jira que o PR soluciona seja o BAC-421 e, assim que o engenheiro criar um PR, o script implanta o código que eles criaram no AWS EC2 para que o controle de qualidade possa apontar seus aplicativos para www.bac421.mydevdomain. com
Qual é a melhor maneira de fazer isso? Eu sou um nube técnico de devops.
Atualização - Especificações do ambiente
então, aqui está uma descrição do nosso ambiente - o back-end usa o laravel 5.3 - ele é implantado no AWS EC2 - usamos o forge para implantação automática (nada sofisticado .. apenas executamos 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 executamos assim que mesclamos o dev ao master branch) - além de não usarmos nenhuma ferramenta de CI / CD, embora esteja aberto a recomendações - o provedor DNS é GoDaddy - nosso servidor de aplicativos é nginx - nosso banco de dados está em um instância separada do RDS