Size: a a a

2020 August 16

D

Denis 災 nobody in jenkins_ru
во, глянь
источник

DS

Dmitry Sergeev in jenkins_ru
Denis 災 nobody
есть очень хорошее видео на эту тему. Вкратце - именно декларатив и нужен.
декларатив нужен там, где ты описываешь состояние к которому надо прийти. Например k8s. А когда ты декларативно скриптуешь -  это странно,  неудобно, и искусственно ограничивает твои возможности и гибкость.
Это мое имхо
источник

D

Denis 災 nobody in jenkins_ru
2 про декларатив, а 3 - Jenkins Pipeline Environment Variables explained, просто познавательно
источник

D

Denis 災 nobody in jenkins_ru
Dmitry Sergeev
декларатив нужен там, где ты описываешь состояние к которому надо прийти. Например k8s. А когда ты декларативно скриптуешь -  это странно,  неудобно, и искусственно ограничивает твои возможности и гибкость.
Это мое имхо
посмотри видео
источник

D

Denis 災 nobody in jenkins_ru
Timestamps:
00:45 Declarative? Scripted? What is the real difference?
01:43 Jenkins pipeline code validation
04:14 Restart pipeline from the stage
07:15 The options block in the declarative pipeline
10:42 Ability to declaratively skip the stage
источник

DS

Dmitry Sergeev in jenkins_ru
Denis 災 nobody
посмотри видео
я знаком с преимуществом декларатива, например перезапуск стейджа. Но этих преимуществ сильно мало, чтобы страдать с ним как по мне
источник

D

Denis 災 nobody in jenkins_ru
а кто страдает? Обернуть скрипты в script это страдание? Заменить try на post это страдание?
источник

D

Denis 災 nobody in jenkins_ru
есть некоторые нюансы с установкой и обновлением переменных, но это 1 раз узнать надо
источник

D

Denis 災 nobody in jenkins_ru
@dburm может много по существу сказать, он тут супер гуру
источник

DS

Dmitry Sergeev in jenkins_ru
Denis 災 nobody
а кто страдает? Обернуть скрипты в script это страдание? Заменить try на post это страдание?
ну и получишь дикую  мешанину.

Описывать императивный скрипт, декларативно, и постоянно делать вставки script, вот  страдания - да. Но это мое имхо
источник

D

Denis 災 nobody in jenkins_ru
если у тебя сплошной башизм - да, скриптед удобнее, но в этом случае можно вынести весь баш в отдельный файл и вызывать его. В нормальных же случаях мы работаем с модулями и плагинами, а они вполне себе декларативны.
источник

D

Denis 災 nobody in jenkins_ru
а запуск только 1 блока или пропуск части блоков - я активно использую, когда можно пропустить шаг на 3 часа потому что там ничего не изменилось - это очень удобно.
источник

D

Denis 災 nobody in jenkins_ru
когда вся джоба на минуту - это обычно неактуально, а вот сборка бывает и час и 4 часа
источник

D

Denis 災 nobody in jenkins_ru
Dmitry Sergeev
я знаком с преимуществом декларатива, например перезапуск стейджа. Но этих преимуществ сильно мало, чтобы страдать с ним как по мне
а видео всё-равно посмотри, первые 2 хотя бы. И человека реально приятно слушать, всё понятно, это не американский и не индусский английский
источник

DS

Dmitry Sergeev in jenkins_ru
Denis 災 nobody
если у тебя сплошной башизм - да, скриптед удобнее, но в этом случае можно вынести весь баш в отдельный файл и вызывать его. В нормальных же случаях мы работаем с модулями и плагинами, а они вполне себе декларативны.
я про логику пайплайна. Башизм там не причём.

Я не знаю что тут ещё обсуждать.
Повторю свою мысль -  CI имеет императивную природу. Используя декларатив в CI, ты на самом деле прогаешь императивно, только с ограниченнием декларатива. Это не тоже самое, что например описывать состояние, к которому следует прийти. Например как в terraform, puppet, k8s. А просто императивный скрипт, описанный декларативно.

Модули и плагины вполне себе императивны. Например, ты пишешь в коде  не "здесь должна лежать склоненная репа", ты пишешь : "склонируй мне репу туда то"
Пропускать стейджы можно в scripted, пишешь  стейдж внутри if, или я не понял о чем речь

Моё личное ИМХО, не претендую на истину
источник

HC

Henry Chinaski in jenkins_ru
хоспади, чего же так медленно работают jenkins/inbound-agent в кубере? А ведь идея-то какая хорошая! Поднялись поды, поработали, опустились, но оче медленно всё(

Я это вот к чему. Товарищи, кто как подключает агентов для Jenkins?
источник

E

Elenhil in jenkins_ru
Кубер плагин + jnlp
источник

E

Elenhil in jenkins_ru
Хз, у нас все достаточно шустро было
источник

E

Elenhil in jenkins_ru
Меньше минуты весь процесс запуска был точно
источник

HC

Henry Chinaski in jenkins_ru
Elenhil
Меньше минуты весь процесс запуска был точно
а можешь скинуть yaml запуска? pv на nfs?
источник