Size: a a a

DevOps — русскоговорящее сообщество

2021 June 25

ДА

Дмитрий Андреев... in DevOps — русскоговорящее сообщество
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
https://github.com/ndmitchell/rattle - клёвая штука
источник

ДА

Дмитрий Андреев... in DevOps — русскоговорящее сообщество
источник

⁣⁣⁣ in DevOps — русскоговорящее сообщество
Спс
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
не везде доступно
источник

ДА

Дмитрий Андреев... in DevOps — русскоговорящее сообщество
тех, кто отстаёт на 3 версии уже ничто не спасёт)
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
оно в альфе, в GKE его не будет даже на последних версиях
источник

ДА

Дмитрий Андреев... in DevOps — русскоговорящее сообщество
ну если всё на столько плохо, то https://github.com/aylei/kubectl-debug
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
самый простой вариант - зайти на ноду и там дебажить
источник

GG

George Gaál in DevOps — русскоговорящее сообщество
зачем оно
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
простая система сборки, берёт тупой скрипт и распарралеливает, делает инкрементальные билды и тд
источник

GG

George Gaál in DevOps — русскоговорящее сообщество
как оно соотносится, например, с prow?
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
при этом не надо указывать зависимости и тд
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
никак, это система сборки, заменяет make
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
можно использовать не только для сборки, но и для любой системы генерации контента
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
идея в rattle интересная. Ты ему скармливаешь скрипт, который сам по себе может "компилировать" софт, он его анализирует и понимает, какие команды можно выполнять параллельно, какие можно не перезапускать в случае инкрементальной сборки
источник

GG

George Gaál in DevOps — русскоговорящее сообщество
прикольно, спасибо
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
простой пример

# make.sh
gcc main.c -o main.o
gcc util.c -o util.o
link main.o util.o -o main.exe

тут rattle поймёт, что первые две команды можно параллельно запускать, что link зависит от 2х предыдущих и при инкрементальном билде не будет пересобирать util если он не поменялся
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
при этом тебе не надо ничего помечать, какие-то метаданные в билд запихивать, rattle всё делает сам
источник

AK

Andrey Kartashov in DevOps — русскоговорящее сообщество
они тестировали сборку проекта на nodejs - добились параллелизма, который продвинутая система сборки не смогла дать. Потому что они вычисляют зависимости автоматом, а человек зависимости может указать неправильно (либо лишние, либо забыть)

ещё они используют спекуляции: то есть запускают команды заранее, ещё не зная, изменились ли входные файлы (которые могут быть обновлены предыдущими командами). Если вдруг получится, что изменились - то команда перезапустится, если нет, то результат уже готов. Ну то есть механизм схожий с branch prediction в CPU
источник