Size: a a a

2020 August 03

DB

Dmitry Burmistrov in jenkins_ru
подготовьте контекст вне билда
источник

DB

Dmitry Burmistrov in jenkins_ru
Dmitry Sergeev
Тянешь все зависимости билда из jenkins. А затем собираешь образы. Нет смысла из образа пулить репы
this
источник

С

Сайхан in jenkins_ru
Dmitry Burmistrov
подготовьте контекст вне билда
+
источник

DS

Dmitry Sergeev in jenkins_ru
Pavel Nov
Я именно этого и пытаюсь избежать через docker multistage build. Так бы я вообще не парился бы с подсовыванием ключа. Дело в том  что подсунуть его первой стадии биулда можно только через ARG. Я не нашел других методов вменяемых
Это даже локально неудобно.
Легче выполнить некотрый pre-build.sh или git submodule init && git submodule updatet.
Чем создавать SSH_PRIVATE_KEY с ключом и пихать его в build-arg
источник

DS

Dmitry Sergeev in jenkins_ru
Ну и со слоями накосячишь,  и ключ окажется в образе в итоге, лишний риск на ровном месте
источник

PN

Pavel Nov in jenkins_ru
Dmitry Sergeev
Это даже локально неудобно.
Легче выполнить некотрый pre-build.sh или git submodule init && git submodule updatet.
Чем создавать SSH_PRIVATE_KEY с ключом и пихать его в build-arg
Мне хотелось бы иметь универсальный докерфайл который можно собрать и локально и запушить результат в реджистри и тоже самое делать дженкинсом. Башнянку я отладил, а с дженкинсом приключения. Тут еще масса вторичных условий который обойти нельзя: смое простое - код докерфайла с обвязкой и конфигами в одном гите, а код приложения в другом гите. Понятно что сразу нужно было писать на дженкинсе, но исторически сначала отладился баш-метод. Тут ситуация когда нельзя "правильно" и канонично jenkinsfile + dockerfile, к сожалению (
источник

KI

Kiya Ilselev in jenkins_ru
в общем, всё получилось с помощью плагина Azure Container Agents и небольших плясок с передачей переменных окружения. Если кому-то нужна будет помощь в конфигурации, обращайтесь :)
источник

DS

Dmitry Sergeev in jenkins_ru
Pavel Nov
Мне хотелось бы иметь универсальный докерфайл который можно собрать и локально и запушить результат в реджистри и тоже самое делать дженкинсом. Башнянку я отладил, а с дженкинсом приключения. Тут еще масса вторичных условий который обойти нельзя: смое простое - код докерфайла с обвязкой и конфигами в одном гите, а код приложения в другом гите. Понятно что сразу нужно было писать на дженкинсе, но исторически сначала отладился баш-метод. Тут ситуация когда нельзя "правильно" и канонично jenkinsfile + dockerfile, к сожалению (
вытаскиваешь дичь с ssh ключами из dockerfile, делаешь pre-build.sh который готовит контекст перед билдом. pre-build.sh вызываешь из jenkins. Вот у тебя и локально и из jenkins сборки не будут отличаться. И получаешь универсальный билд
источник

PN

Pavel Nov in jenkins_ru
Dmitry Sergeev
вытаскиваешь дичь с ssh ключами из dockerfile, делаешь pre-build.sh который готовит контекст перед билдом. pre-build.sh вызываешь из jenkins. Вот у тебя и локально и из jenkins сборки не будут отличаться. И получаешь универсальный билд
Я понял идею, спасибо!
источник

VS

Vasilyev Sergey in jenkins_ru
Гайз, а можно как-то полученное в джобе значение, обернуть в *
Чтобы при последующих принтах это значение уже не печаталось в открытом виде? Также как это работает для withCredentials
источник

AD

Alex Di in jenkins_ru
можно  как вариант обернуть в MaskPasswordsBuildWrapper
источник

VS

Vasilyev Sergey in jenkins_ru
Alex Di
можно  как вариант обернуть в MaskPasswordsBuildWrapper
источник

VS

Vasilyev Sergey in jenkins_ru
Вот прям берет и тупо распечатывает пароль в заголовке))
источник
2020 August 04

V

Viktor in jenkins_ru
Kiya Ilselev
в общем, всё получилось с помощью плагина Azure Container Agents и небольших плясок с передачей переменных окружения. Если кому-то нужна будет помощь в конфигурации, обращайтесь :)
Я рад, красавчик )
источник

II

Igor Ivanov in jenkins_ru
а пайплайн никак нельзя попросить при печати стектрейсов исключений, ограничивать оные только строчками пайплайна и shared libraries? дабы вместо ужаса со скриншота иметь лаконичное
org.jenkinsci.plugins.workflow.steps.MissingContextVariableException: ...
   at WorkflowScript.run(WorkflowScript:1)
источник

d

d7d1cd in jenkins_ru
Добрый день. Подскажите, знатоки Дженкинса.

Есть большой репозиторий, который хранит много независимых друг от друга исходников программ. Хранение программ строго организовано: у каждой своя папка с исходниками и скриптом сборки.
Ветка мастер хранит только рабочие версии исходников программ. Я создаю свою локальную ветку от ветки мастер и добавляю в 2 разных программы функционал. Далее мержу эту ветку в ветку develop, которая хранит разрабатываемые версии программ. При мерже обязательно создаю мерж-коммит. Возможно ли настроить Дженкинс так, чтобы в момент создания мерж-коммита он собрал только те программы, которые я изменил в своей ветке?
источник

DB

Dmitry Burmistrov in jenkins_ru
git diff HEAD^ --name-only --diff-filter=AM
источник

d

d7d1cd in jenkins_ru
Dmitry Burmistrov
git diff HEAD^ --name-only --diff-filter=AM
Спасибо. Я так понимаю, это ответ: "Да, возможно"?
источник

DB

Dmitry Burmistrov in jenkins_ru
в дженкинсе всё можно. вопрос в ресурсах
источник

d

d7d1cd in jenkins_ru
Dmitry Burmistrov
в дженкинсе всё можно. вопрос в ресурсах
Что за ресурсы?
источник