Ручной деплой на сервер требует запоминания последовательности команд и несет риск ошибки из-за человеческого фактора. CI/CD-пайплайны делают процесс воспроизводимым: одна и та же последовательность шагов выполняется каждый раз. GitLab CI встроен в систему контроля версий, что позволяет привязать деплой к событиям в репозитории. ➤ Вариант 1 (Тесты и деплой на staging): # .gitlab-ci.yml stages: - test - deploy run_tests: stage: test script: - npm install - npm run test deploy_staging: stage: deploy script: - rsync -avz --delete ./ user@staging-server:/var/www/html/ only: - develop ➤ Вариант 2 (Ручной деплой на продакшн по тегу): deploy_production: stage: deploy script: - ansible-playbook -i prod.inventory deploy.yml only: - tags when: manual Пайплайн гарантирует, что код перед попаданием на продакшен проходит все необходимые проверки в одинаковом окружении. Кто выполняет деплой в вашей команде - разработчик или CI-система? P.S. В GitLab CI можно переиспользовать шаблоны чере
GitLab CI: автоматизация сборки и доставки
22 марта22 мар
~1 мин