@ru_docker

Страница 49 из 610
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
патамушта я долбоёб
@demeliorator запинь это?))

yopp
17.07.2016
13:27:52


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

yopp
17.07.2016
13:29:23
@demeliorator запинь это?))
передать опыт молодым поколениям!

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
а (3) - это просто копирование файлов
Это не просто копирование файлов. 1. Копирование файлов 2. Чистка и прогрев кеша 3. Сборка ассетов 4. Накатка миграций Как минимум

Даже на пхп проекте этот процесс может минут 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
А девопс кнопочкой в интерфейсе послал свежий контейнер на прод через 10 минут.
оно само послалось через blue green deployment, ну или через постепенную нагрузку.

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

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

yopp
17.07.2016
13:42:39
есть, скажем, ночные сборки
ночные сборки это 90 год

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
автоматические тесты после пуша в гите это хорошо, я согласен, но даже если там просто 1 ядро выделено - оно справится с билдом
Когда в проекте 10-20 разработчиков и они весь рабочий день пишут код и делают пуш, скажем каждый час, получается что 10*8 = 80 пушей в день = 80 билдов в день.

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
на том же маркете сколько багов было
А если бы у них были ночные сборки - багов было бы меньше или больше?

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:38
у меня по всем продуктам 100+ билдов в день получается

Pavel
17.07.2016
13:46:39
так а не проще ли просто 1 раз в 3 недели релизить? какая потребность в том, чтобы релизить по несколько раз в день?
То есть чтобы увидеть на a/b тестах что новая фича непопялурна, придется ждать 3 недели?

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

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 человек и увидеть что не так

потом хуйнуть ещё раз

потом когда на 100 работат, хуйнуть на 10к

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

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

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

Страница 49 из 610