
Alexander
17.07.2016
13:24:23
ну то есть билд - это же новая версия?

Pavel
17.07.2016
13:24:30
Тесты гонять например

Alexander
17.07.2016
13:24:32
есть скрам - то это раз в 2 недели

yopp
17.07.2016
13:24:33
для того чтоб катать на стейджинг

Google

Alexander
17.07.2016
13:24:39
если это тесты - это автоматическая система делает

yopp
17.07.2016
13:24:40
чтоб сразу было видно результат
fail fast

Pavel
17.07.2016
13:24:51
При CI/CD все билдится много раз в день

Alexander
17.07.2016
13:24:52
но она не обязана каждый раз снова билдить

Pavel
17.07.2016
13:25:18
Обязана, иначе можно пропустить регрессионный баг

Alexander
17.07.2016
13:25:29
ну а без докера как?

yopp
17.07.2016
13:25:33

Alexander
17.07.2016
13:25:43
не переустанавливали же линукс всякий раз с тестами

yopp
17.07.2016
13:26:01
ну вот докер решет пробелму «не преустанавливать линкус каждый раз»
потому что линукс уже есть, в него просто надо положить файлы

Pavel
17.07.2016
13:26:27
ну а без докера как?
В теории без докера сложно. Как раз потому что нету слоев и приходится все с нуля перестраивать. А с докером можно очень быстро перебилдить только изменившиеся слои и прогнать тесты.

yopp
17.07.2016
13:26:35
и вместо того чтоб плодить вот это: а давайте щас гит дёрнем, а чо у нас на стейджинге сломалось? у меня локально всё работает!

Google

yopp
17.07.2016
13:26:47
а тут стянул локально имадж, нажал compose up и посмотрел что конкретно сломалось
и не надо тянуть тридцать гигов виртуалок

Ivan
17.07.2016
13:27:32

yopp
17.07.2016
13:27:52
™

Ivan
17.07.2016
13:28:27
Хотя это не девопс чатик, тут такой юмор не оценят :(

yopp
17.07.2016
13:29:23

Alexander
17.07.2016
13:29:40
мой опыт больше про питон/пхп, как я это вижу : есть (1) система (на базе линукс), там (2) какой-то софт и либы, которые нам нужны для установки зависимостей, есть софт, от которого зависит проект (php/python, mysql/mariadb/postgresql/.., apache/nginx), (3) есть непосредственно наш проект и либы на том же питоне/пхп как зависимости...
вот нам нужно реально трогать только (3) каждый раз, (1) и (2) можно обновлять только 1 раз в 2 недели
перед релизом
то есть пусть оно там хоть 10 минут билдится, пофиг же
а (3) - это просто копирование файлов
и каждые 2 недели перед релизом на боевой сервер, да, перебилдим с нуля всё и проверим, что ничего не упало
а вот каждый день - зачем это всё билдить?

Pavel
17.07.2016
13:31:31
Даже на пхп проекте этот процесс может минут 5 идти.
И если собрался такой контейнер то дальше он за 10 секунд разлетается по девам/стейджам/продам

Alexander
17.07.2016
13:33:49
ну, с моей точки зрения нет проблем в том чтобы кешировать (1), (2) , а 3 всегда собирать заново без кешей на базе состояния после (2)
и для этого всего вовсе не стоило городить какие-то те вещи, которые в докере сделаны
кому очень нужно - могли бы кешировать
вообще никаких докерфайлов не нужно было делать, должен был быть просто .sh файл с набором команд
и если кому-то надо - он бы мог в промежутках между командами это кешировать

Google

Alexander
17.07.2016
13:35:52
можно было бы даже хелпер сделать для этого

Pavel
17.07.2016
13:36:03
Тут речь не о том что это какая-то нерешаемая проблема, а о том что получается сэкономить 100% времени, 50% системных ресурсов и всяких таких затрат. Быстрее выше сильнее.

Alexander
17.07.2016
13:36:04
нужен кеш - вставляй такую-то команду

Pavel
17.07.2016
13:36:58
Но если у компании девиз - медленнее ниже примитивнее, то да, можно и sh скриптом все проблемы решать.
И даже перейти с git на svn обратно ;)

Alexander
17.07.2016
13:39:13
так а в чём тут примитивность, если кеш не нужен?
есть, скажем, ночные сборки
какой смысл каждый час что-то там билдить?
ночью оно само билдится, на незагруженном сервере
пусть хоть 4 часа билдится, кому какая разница там

Pavel
17.07.2016
13:40:04
Ночные сборки это инновации 10летней давности. Сейчас - разработчик сделал push в гит - система все пересобрала и прогнала тесты.
А девопс кнопочкой в интерфейсе послал свежий контейнер на прод через 10 минут.

yopp
17.07.2016
13:42:02

Ivan
17.07.2016
13:42:08

yopp
17.07.2016
13:42:09
с нормальнйо инвалидацией

Ivan
17.07.2016
13:42:18
потому что твоё описание нынче не модно

yopp
17.07.2016
13:42:39

Alexander
17.07.2016
13:42:51
автоматические тесты после пуша в гите это хорошо, я согласен, но даже если там просто 1 ядро выделено - оно справится с билдом

yopp
17.07.2016
13:43:05
сейчас уже почти 2020
в 2020 году надо иметь инфраструктуру которую можно катать полностью за минуты, а не за три недели

Google

Alexander
17.07.2016
13:43:42
все ошибки всё равно протестировать автоматически не получится

yopp
17.07.2016
13:43:45
и не тратить время разработчиков на игру «А УМЕНЯ СОБИРАЕТСЯ»
вот

Alexander
17.07.2016
13:43:52
нужна команда тестировщиков, которые вручную всё тестируют

yopp
17.07.2016
13:43:58
по этому когда ты катаешь постоянно, сразу, ты всё говно сразу видишь
особенно когда ты сам пользуешься своим продуктом

Pavel
17.07.2016
13:44:29

Alexander
17.07.2016
13:44:31
ну вот яндекс он как раз выливает в продакшн сразу же после коммита и сборки и проверки тестов

Admin
ERROR: S client not available

Alexander
17.07.2016
13:44:37
и куча же багов
на том же маркете сколько багов было

yopp
17.07.2016
13:44:45
и отлично
error rate привысил порог, катанули назад
за секунду
девелоперы получили кучу информции и побежали править баги и дописывать тесты

Pavel
17.07.2016
13:45:35

Ivan
17.07.2016
13:45:45

Alexander
17.07.2016
13:45:52
так а не проще ли просто 1 раз в 3 недели релизить? какая потребность в том, чтобы релизить по несколько раз в день?
с маркетинговой точки зрения лучше 1 раз в 1-3 недели
тогда можно рассылку сделать

Google

Alexander
17.07.2016
13:46:21
всем сказать, что какие мы молодцы, вот для вас сделали

Semyon
17.07.2016
13:46:25

yopp
17.07.2016
13:46:37

Semyon
17.07.2016
13:46:38
у меня по всем продуктам 100+ билдов в день получается

Pavel
17.07.2016
13:46:39

Ivan
17.07.2016
13:46:44

Alexander
17.07.2016
13:47:17
ну, если 3 недели для кого-то это большой срок - можно раз в неделю

Semyon
17.07.2016
13:47:23

Alexander
17.07.2016
13:47:39
не, я понимаю, что модно раз в час
и я понимаю, как это технически сделать

Semyon
17.07.2016
13:47:50
это не модно, это необходимо

Alexander
17.07.2016
13:47:52
но я не понимаю реальной потребности в этом

Semyon
17.07.2016
13:48:00
У тебя есть отдел маркетинга?

Pavel
17.07.2016
13:48:10

yopp
17.07.2016
13:48:24
потом хуйнуть ещё раз
потом когда на 100 работат, хуйнуть на 10к

Alexander
17.07.2016
13:48:44
так почему же вслепую? бета-тестеры там всякие

yopp
17.07.2016
13:48:49
а потом через три недели отполированную живым опытом фичу на всех

Alexander
17.07.2016
13:48:54
им ранний доступ