Ответ
При обнаружении ошибки в сборке процесс деплоя автоматически останавливается. Вот типичный сценарий:
- CI/CD пайплайн (например, GitHub Actions, GitLab CI) запускает тесты и сборку.
- Если сборка или тесты падают, система отправляет уведомление в Slack/email.
- Разработчики получают информацию об ошибке из логов (например, Jest/ESLint ошибки).
- После фикса ошибки и пуша изменений процесс запускается заново.
Пример конфига GitHub Actions:
name: Deploy
on: push
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: npm install
- run: npm run build # если упадет здесь - дальше не пойдет
- run: npm test
- uses: actions/upload-artifact@v2 # этот шаг выполнится только если build и test прошли
Ключевые моменты:
- Сборка не попадает на прод пока не исправлены ошибки
- Логи сохраняются для анализа
- Процесс полностью автоматизирован
Ответ 18+ 🔞
А, ну это ж классика, блядь! Весь этот цирк с деплоем, когда у тебя CI/CD пайплайн работает как строгий охранник на проходной, ёпта.
Смотри, как это обычно бывает, сука:
- Твой пайплайн, будь то GitHub Actions или там GitLab CI, запускается, как только ты что-то заливаешь. И начинает городить: тесты гоняет, сборку делает.
- И вот если на этом этапе что-то пошло не так — сборка сломалась или тесты посыпались — всё, пиздец, приехали. Система сразу же начинает орать на всех углах: в Slack тебе строчит, на почту письма гонит. Типа «Эй, мудак, посмотри, что ты натворил!».
- Ну а дальше разработчики, как обезьяны с гранатой, начинают эти логи читать. Там Jest накосячил, там ESLint ругается... В общем, ищут, где же они, сука, лажанулись.
- Нашли, починили, залили исправления — и этот ёбанный цирк начинается по новой, блядь.
Вот, смотри, пример конфига для GitHub Actions, чтоб ты понимал, о какой хуйне речь:
name: Deploy
on: push
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: npm install
- run: npm run build # если упадет здесь - дальше не пойдет
- run: npm test
- uses: actions/upload-artifact@v2 # этот шаг выполнится только если build и test прошли
Видишь эту строчку npm run build? Вот если тут всё пойдёт по пизде — всё, приплыли. Дальше ни шага, ни единого ёбаного шага! Никакой upload-artifact уже не сработает, пока ты эту проблему не порешаешь.
И главное, что в этом всём есть, блядь:
- Никакой кривой сборке на прод дороги нет, пока её не починят. Вообще.
- Все логи, где всё посыпалось, сохраняются — сиди, изучай, рыдай.
- И весь этот процесс, сука, абсолютно автоматический. Никакого ручного вмешательства, чих-пых тебя в сраку! Сделал хуйню — получи по ебалу и иди чини.