Lý lịch
Tôi đã có một nhóm QA không có kỹ thuật phải thực hiện thử nghiệm trên các ứng dụng iOS / Android cho mỗi Yêu cầu kéo (PR) được tạo bởi nhóm phụ trợ của tôi.
Câu hỏi
Đây là những gì tôi muốn làm: mỗi khi một kỹ sư phụ trợ tạo PR trên bitbucket, tôi muốn một tập lệnh tự động triển khai mã của nhánh PR git đó vào một tên miền phụ của máy chủ dev của chúng tôi phù hợp với vấn đề JIRA được tạo.
Ví dụ: giả sử vấn đề jira mà địa chỉ PR là BAC-421, thì ngay khi kỹ sư tạo PR, tập lệnh sẽ triển khai mã mà họ đã tạo vào AWS EC2 để QA có thể trỏ ứng dụng của họ tới www.bac421.mydevdomain. com
Cách tốt nhất để làm việc này là gì? Tôi là một tín đồ kỹ thuật.
Cập nhật - Thông số môi trường
Vì vậy, đây là một sự chia tay của env của chúng tôi - phần phụ trợ sử dụng laravel 5.3 - nó được triển khai trên AWS EC2 - chúng tôi sử dụng giả mạo để triển khai tự động (không có gì lạ mắt .. chúng tôi chỉ chạy tập lệnh này:
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
rằng chúng tôi chạy ngay khi chúng tôi hợp nhất với chi nhánh chính) - bên cạnh đó chúng tôi không sử dụng bất kỳ công cụ CI / CD nào mặc dù tôi mở cho các đề xuất - nhà cung cấp DNS là GoDaddy - máy chủ ứng dụng của chúng tôi là nginx - cơ sở dữ liệu của chúng tôi đang ở trong một ví dụ RDS riêng