Size: a a a

2021 April 02

LK

L K in jenkins_ru
подскажите ка, почему trigger pollSCM запускает деплой даже если ченджей нету ?
Jenkinsfile DSL
источник

LK

L K in jenkins_ru
немного пролагало
источник

AS

Alex S in jenkins_ru
Как хранить в текстовом файле переменную-список, и потом считать ее оттуда как глобальную переменную?
источник

JR

Jürgen Romins in jenkins_ru
Alex S
Как хранить в текстовом файле переменную-список, и потом считать ее оттуда как глобальную переменную?
Readyaml может помочь
источник

HC

Henry Chinaski in jenkins_ru
Jürgen Romins
Readyaml может помочь
+
источник

II

Igor Ivanov in jenkins_ru
существуют ли в природе какие-либо средства к тому, чтобы сделать дженкинс более стабильным при жёстких рестартах?

допустим на ноде Х с одним экзекутором хотят запуститься 2 билда джоба, который делает что-то с неким ресурсом в монопольном режиме:
- первый билд запускается, начинает делать свои чёрные дела, второй висит в очереди
- дженкинс перезагружается (по systemctl restart, ребуту тачки, сегфолту или ещё чему)
- на ноде Х продолжает бежать python.exe от прошлого билда, делающий чёрные дела, но из-за рестарта нода рапортует, что на ней всё свободно
- на ноду приземляется второй билд, запускает свой python.exe и вступает в кровавую коллизию с предыдущим (например если они редактируют одни и те же файлы)

собственно, разыскивается нечто, что например при подключении джавы к агенту могло бы делать проверку "ой, тут висит процесс, у которого есть environment variable JOB_NAME и BUILD_ID, это ошмётки прошлого билда, надо отметить что здешний экзекутор занят"

(варианты в стиле "не использовать физические агенты, переехать в виртуалки/кубы/whatever" не предлагать)
источник

DK

D K in jenkins_ru
Igor Ivanov
существуют ли в природе какие-либо средства к тому, чтобы сделать дженкинс более стабильным при жёстких рестартах?

допустим на ноде Х с одним экзекутором хотят запуститься 2 билда джоба, который делает что-то с неким ресурсом в монопольном режиме:
- первый билд запускается, начинает делать свои чёрные дела, второй висит в очереди
- дженкинс перезагружается (по systemctl restart, ребуту тачки, сегфолту или ещё чему)
- на ноде Х продолжает бежать python.exe от прошлого билда, делающий чёрные дела, но из-за рестарта нода рапортует, что на ней всё свободно
- на ноду приземляется второй билд, запускает свой python.exe и вступает в кровавую коллизию с предыдущим (например если они редактируют одни и те же файлы)

собственно, разыскивается нечто, что например при подключении джавы к агенту могло бы делать проверку "ой, тут висит процесс, у которого есть environment variable JOB_NAME и BUILD_ID, это ошмётки прошлого билда, надо отметить что здешний экзекутор занят"

(варианты в стиле "не использовать физические агенты, переехать в виртуалки/кубы/whatever" не предлагать)
я только такую нормальную работу видел в TC, на jenkins нужно писать свою обертку, как я полагаю
источник

СЛ

Сергей Ладутько... in jenkins_ru
Скажите в гитлабе я мог написать
 artifacts:
   paths:
     - .mbuild/publish/
и он у меня создовал zip зип архив
Я так понимаю что в дженкинсе этого мало
            post {
               success {
                   archiveArtifacts artifacts: '.mbuild/publish/'
               }
           }

?
источник

СЛ

Сергей Ладутько... in jenkins_ru
Надо в скрипте создовать зип а в пост передавать путь к  зипу ?
источник

JR

Jürgen Romins in jenkins_ru
Сергей Ладутько
Скажите в гитлабе я мог написать
 artifacts:
   paths:
     - .mbuild/publish/
и он у меня создовал zip зип архив
Я так понимаю что в дженкинсе этого мало
            post {
               success {
                   archiveArtifacts artifacts: '.mbuild/publish/'
               }
           }

?
источник

СЛ

Сергей Ладутько... in jenkins_ru
Спасибо понял
источник

СЛ

Сергей Ладутько... in jenkins_ru
А он у меня скачивает архив с дерикториями
который
1
archive
       1
       1.mbuild
                     1
                     1 publish/
А я хочу что бы первая директория была ./mbuild это как можно сделать ?
источник

JR

Jürgen Romins in jenkins_ru
Сергей Ладутько
А он у меня скачивает архив с дерикториями
который
1
archive
       1
       1.mbuild
                     1
                     1 publish/
А я хочу что бы первая директория была ./mbuild это как можно сделать ?
Всмвсле хочу чтобы первая была? Указываешь в artifacts
источник

СЛ

Сергей Ладутько... in jenkins_ru
Jürgen Romins
Всмвсле хочу чтобы первая была? Указываешь в artifacts
Тоесть
Если так
archiveArtifacts artifacts: '.mbuild/publish/'

получаеться  три папки в архиве когда скачивваю
archive>.mbuild>publish/
А я хочу что бы было
mbuild>publish/
источник

СЛ

Сергей Ладутько... in jenkins_ru
Ладно и еще вопрос в гитлабе я мог делать наследование от одной джобы в другую,
Что типо
.build-common:
 image:
А потом
build-debug-fw:
 extends:
   - .build-common
В дженкинсе я могу такое делать ?
источник

JR

Jürgen Romins in jenkins_ru
Сергей Ладутько
Ладно и еще вопрос в гитлабе я мог делать наследование от одной джобы в другую,
Что типо
.build-common:
 image:
А потом
build-debug-fw:
 extends:
   - .build-common
В дженкинсе я могу такое делать ?
Давай ты начнёшь с документации по дженкинс? Апстрим и доунстрим джобы и основы дженкинс
источник

Д

Дмитрий in jenkins_ru
Всем привет, подскажите чего на мастере может складыватся git caches? ось centos 7, ничего не собирается , чисто управляшка, при этом есть папка workspace в которой находиться .git
источник

Д

Дмитрий in jenkins_ru
и jenkins data весит 150 гб
источник

Д

Дмитрий in jenkins_ru
14292   ./logs
8       ./.groovy
16      ./lost+found
12      ./.config
29432300        ./workspace
68      ./secrets
12      ./.cache
681016  ./plugins
36628896        ./jobs
76      ./nodes
79937176        ./caches
220     ./fingerprints
196     ./.keystore
948     ./users
8       ./userContent
8       ./.pki
4       ./workflow-libs
2380    ./updates
88      ./.java
8       ./cacerts
8       ./.ssh
146698228
источник

А

Асилбек in jenkins_ru
добрый вечер всем, после обновление jenkins начал выдавать  такие ошибки
provisioning config files...
FATAL: Error creating extended parser class: null
java.lang.IllegalStateException
at org.objectweb.asm.tree.analysis.BasicInterpreter.<init>(BasicInterpreter.java:66)
at org.parboiled.transform.RuleMethodInterpreter.<init>(RuleMethodInterpreter.java:42)
at org.parboiled.transform.InstructionGraphCreator.process(InstructionGraphCreator.java:41)
at org.parboiled.transform.ParserTransformer.runMethodTransformers(ParserTransformer.java:62)
at org.parboiled.transform.ParserTransformer.extendParserClass(ParserTransformer.java:45)
at org.parboiled.transform.ParserTransformer.transformParser(ParserTransformer.java:38)
at org.parboiled.Parboiled.createParser(Parboiled.java:54)
источник