Size: a a a

2021 January 31

c

corsars in jenkins_ru
unixshaman
Вот я тут почитал/посмотрел https://www.digitalocean.com/community/tutorials/how-to-automate-jenkins-job-configuration-using-job-dsl
Самый последний пример, но ручками делать вот это все, лезть в xml там, чтобы хотя бы что-то разобрать. Какие-то abstractFolder'ы правильно создавать и прочее прочее - не хотел 100500 раз запускаться в отладку, чтобы создать такую махину. Думал, может быть можно как-то описание существующих пайплайнов получить в JSON как-то по api, чтобы можно было хотя бы какими-то кусками воспользоваться.
Да сделай по условиям запускать из первого второй если то то в groove
источник

u

unixshaman in jenkins_ru
pipeline {
   agent any

   stages {
       stage('Создание пайплайнов') {
           steps {
               jobDsl sandbox: true, scriptText: '''
                   folder('Folder_1') {
                       displayName('Каталог 1')
                       description('')
                   }
                   folder('Folder_1/Folder_1_1') {
                       displayName('Каталог 1 1')
                       description('')
                   }
               '''
           }
       }
   }
}


Мне пока для отладки такой вариант нравится. Только в настройках глобальных параметров безопасности надо отщелкнуть галочку Enable script security for Job DSL scripts
источник

E

Elenhil in jenkins_ru
unixshaman
pipeline {
   agent any

   stages {
       stage('Создание пайплайнов') {
           steps {
               jobDsl sandbox: true, scriptText: '''
                   folder('Folder_1') {
                       displayName('Каталог 1')
                       description('')
                   }
                   folder('Folder_1/Folder_1_1') {
                       displayName('Каталог 1 1')
                       description('')
                   }
               '''
           }
       }
   }
}


Мне пока для отладки такой вариант нравится. Только в настройках глобальных параметров безопасности надо отщелкнуть галочку Enable script security for Job DSL scripts
Если что, дслку можно отдельным файлом хранить
источник

E

Elenhil in jenkins_ru
Это сильно удобнее
источник

u

unixshaman in jenkins_ru
Elenhil
Это сильно удобнее
Аа, понял идею, видел там пункт - типо на диске лежит, т.е. ее можно прямо там на диске редактировать из текстового редактора нормального и просто перезапускать джобу.

Огонь, спасибо за совет!!! Это ускорит процесс.
источник

E

Elenhil in jenkins_ru
unixshaman
Аа, понял идею, видел там пункт - типо на диске лежит, т.е. ее можно прямо там на диске редактировать из текстового редактора нормального и просто перезапускать джобу.

Огонь, спасибо за совет!!! Это ускорит процесс.
Эээ
источник

E

Elenhil in jenkins_ru
Ну скорее класть его в гит вместе с дженкинсфайлом
источник

u

unixshaman in jenkins_ru
Elenhil
Ну скорее класть его в гит вместе с дженкинсфайлом
Нее, ну на этапе отладки это мне не поможет особо, в финале да
источник

u

unixshaman in jenkins_ru
unixshaman
pipeline {
   agent any

   stages {
       stage('Создание пайплайнов') {
           steps {
               jobDsl sandbox: true, scriptText: '''
                   folder('Folder_1') {
                       displayName('Каталог 1')
                       description('')
                   }
                   folder('Folder_1/Folder_1_1') {
                       displayName('Каталог 1 1')
                       description('')
                   }
               '''
           }
       }
   }
}


Мне пока для отладки такой вариант нравится. Только в настройках глобальных параметров безопасности надо отщелкнуть галочку Enable script security for Job DSL scripts
pipelineJob('Folder_1/Folder_1_1/stand/myPipe_1') {
   // description('')
   definition {
       cpsScm {
           scm {
               git {
                   remote {
                       branch('origin/master')
                       url("https://server/root/repo.git")
                       credentials('Gitlab_creds')
                   }
               }
           }
           scriptPath('Project/Pipline_TEMPLATE.groovy')
           lightweight(true)
       }
   }
}
Вот такой кусок добавил после folder и все. Это работает как надо.
Теперь, этот кусок надо вынести в функцию, сделать параметризованное URL и имя пайплайна и путь к пайплайну в Git. И вызывать из основного пайплайна сколько угодно раз с любыми именами пайплайнов и путями к файлу.

Вот этого я хотел добиться.

Спасибо большое @HankeyChinaski !!!
источник
2021 February 01

HC

Henry Chinaski in jenkins_ru
unixshaman
pipelineJob('Folder_1/Folder_1_1/stand/myPipe_1') {
   // description('')
   definition {
       cpsScm {
           scm {
               git {
                   remote {
                       branch('origin/master')
                       url("https://server/root/repo.git")
                       credentials('Gitlab_creds')
                   }
               }
           }
           scriptPath('Project/Pipline_TEMPLATE.groovy')
           lightweight(true)
       }
   }
}
Вот такой кусок добавил после folder и все. Это работает как надо.
Теперь, этот кусок надо вынести в функцию, сделать параметризованное URL и имя пайплайна и путь к пайплайну в Git. И вызывать из основного пайплайна сколько угодно раз с любыми именами пайплайнов и путями к файлу.

Вот этого я хотел добиться.

Спасибо большое @HankeyChinaski !!!
Пожалуйста
источник

ON

Olzhas Nuralinov in jenkins_ru
подскажите, как правильно подсовывать имя кастомной ветки?
pipeline -> branches to build
источник

ON

Olzhas Nuralinov in jenkins_ru
Olzhas Nuralinov
подскажите, как правильно подсовывать имя кастомной ветки?
pipeline -> branches to build
просто у меня ${branchName} не работает
источник

ON

Olzhas Nuralinov in jenkins_ru
Olzhas Nuralinov
просто у меня ${branchName} не работает
Решилось введением имени репозитория:
repoName/${branchName}
источник

HC

Henry Chinaski in jenkins_ru
Всем привет. Подскажите, пожалуйста, как можно изменить credentials id в Jenkins?
источник

E

Elenhil in jenkins_ru
Henry Chinaski
Всем привет. Подскажите, пожалуйста, как можно изменить credentials id в Jenkins?
пересоздать
источник

E

Elenhil in jenkins_ru
это uid
источник

E

Elenhil in jenkins_ru
уиды не меняются
источник

HC

Henry Chinaski in jenkins_ru
Elenhil
пересоздать
а через редактирование существующих никак? Я нашёл, что в /var/lib/jenkins/credentials.xml они есть, но где-то ещё
источник

E

Elenhil in jenkins_ru
Henry Chinaski
а через редактирование существующих никак? Я нашёл, что в /var/lib/jenkins/credentials.xml они есть, но где-то ещё
это не настоящий сварщик
источник

E

Elenhil in jenkins_ru
Они есть в кисторе
источник