sfondo
Ho un team di QA non tecnici che devono eseguire test su app iOS / Android per ogni richiesta pull (PR) che viene creata dal mio team di backend.
Domanda
Questo è quello che voglio fare: ogni volta che un ingegnere di backend crea un PR su bitbucket, vorrei uno script per distribuire automaticamente il codice di quel ramo git di PR in un sottodominio del nostro server di sviluppo che corrisponde al problema JIRA creato.
Ad esempio, supponiamo che il problema di jira sia che gli indirizzi PR sono BAC-421, quindi non appena l'ingegnere crea un PR, lo script distribuisce il codice che hanno creato in AWS EC2 in modo che il QA possa indirizzare le loro app a www.bac421.mydevdomain. com
Qual è il modo migliore per farlo? Sono una nuvola tecnica devops.
Aggiornamento - Specifiche ambientali
quindi ecco una rottura del nostro env - il backend usa laravel 5.3 - è distribuito su AWS EC2 - usiamo forge per la distribuzione automatica (niente di speciale .. abbiamo appena eseguito questo 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
che eseguiamo non appena uniamo dev al ramo principale) - oltre a ciò non usiamo alcun strumento CI / CD anche se sono aperto per consigli - Il provider DNS è GoDaddy - Il nostro server delle applicazioni è nginx - Il nostro database è in un istanza RDS separata