littleguga
@littleguga
Не стыдно не знать, а стыдно не интересоваться.

В чем смысл ежедневных сборок?

Для чего их стоит использовать?

1. Тема для вордпресса?
2. Плагин для jquery?
3. Консольный модуль для nodejs
4. Обширное и многофункциональное веб-приложение на стеке php+js

Я правильно понимаю, что данная процедура нужна для отслеживания изменений, которые ломают продукт?
То есть сделал коммит->ночная сборка сломалась->на следующий день поправил?
А если я пишу изменения, не успел доделать функционал, но день закончен - надо ли кидать в git, точно зная, что это сломает продукт? (и тут сразу второй вопрос, ежедневно тестировать сборку надо только ветки master? Или всех веток с фичами, наработками и тд?)
  • Вопрос задан
  • 953 просмотра
Пригласить эксперта
Ответы на вопрос 4
saboteur_kiev
@saboteur_kiev Куратор тега Программирование
software engineer
Варианты могут быть такие:
а) На каждый коммит сразу идет сборка продукта и прогоняются интеграционные тесты.

Плюсы такие - на рабочем месте вам нужен только GIT и IDE, все компиляторы, окружение для запуска приложения - на нодах билдсервера. В результате вы можете кодить откуда угодно, и сразу проверять целостность сборки с каждым коммитом.

б) сборка может быть ночной. Например потому что билд идет 5 часов на толстом сервере, и на рабочей машине он будет идти 10-15 часов, а то и не идти вообще. Тогда конечно, желательно не ломать билд недоделанными коммитами. Но git же позволяет коммитить без пушей, либо пользоваться бренчами, и настраивать сборку не на просто коммит, а на мерж в девелоперский или мастер бренч.

в) Билдов может быть много, разных, под билдами вообще не обязательно подразумевается компиляция, а например прогон исходников через какой-нить анализатор кода, с репортом, могут гоняться тесты для отдельных компонентов.

Ну и кроме того, у разработчиков своя работа, у тестировщиков своя. Полезно тестировать фичи по мере их появления, а не ждать неделю, а потом сидеть в мыле.
Ответ написан
Maximum_Live
@Maximum_Live
учусь php
ну я этим не пользуюсь , скорее всего это надо разработчикам cms или крупных (заметьте Крупных) проектов , а так для маленького проекта это не надо
Ответ написан
Комментировать
@Free_ze
Пишу комментарии в комментарии, а не в ответы
Ломать билд крайне нежелательно, особенно в master-ветке!
Ночные сборки нужны не только для непосредственно разрабатываемого продукта, но и для отслеживания интеграции со всякими внешними зависимостями (через Maven, NuGet, npm...у кого там что подтягивается).

Встречал, что юнит-тесты прогоняются при каждом коммине (даже фичебранчи, т.е. их ломать тоже не желательно), но полноценные ночные сборки, тесты Selenium работают лишь с develop.
Ответ написан
@ahosta
Ну у нас например, тесты прогоняются ПРИ КАЖДОМ КОММИТЕ, а не раз в сутки.
Раз в сутки - это уже устаревшее.
Это с тех времен, когда софт писался на медленно компилируемых вещах.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы