Size: a a a

2021 March 04

n

nibble in jenkins_ru
сформулирую вопрос немного иначе - итак, я только знакомлюсь с дженкинсом, у меня стоит задача - перенести пайплайны с гитлаба на сервер с задеплоенным дженкинсом

умеет ли каким-то образом дженкинс хавать уже имеющийся .gitlab-ci.yml или нужно писать Jenkinsfile самому?
источник

DS

Dmitry Sergeev in jenkins_ru
nibble
сформулирую вопрос немного иначе - итак, я только знакомлюсь с дженкинсом, у меня стоит задача - перенести пайплайны с гитлаба на сервер с задеплоенным дженкинсом

умеет ли каким-то образом дженкинс хавать уже имеющийся .gitlab-ci.yml или нужно писать Jenkinsfile самому?
нет
надо писать
источник

n

nibble in jenkins_ru
Dmitry Sergeev
нет
надо писать
да я вот посидел, ВЫНИМАТЕЛЬНО доку гитлаба поштудировал, оказалось там есть раннеры
источник

n

nibble in jenkins_ru
в моем кейсе получается что дженкинс не нужен
источник

DS

Dmitry Sergeev in jenkins_ru
nibble
в моем кейсе получается что дженкинс не нужен
👍
источник

JR

Jürgen Romins in jenkins_ru
nibble
здравствуйте, подскажите, если я интегрирую дженкинс в гитлаб, то мне нужно от руки писать дженкинсфайл, или есть способ скормить ему .gitlab-ci.yml?
Разные системы разный синтаксис
источник

n

nibble in jenkins_ru
Jürgen Romins
Разные системы разный синтаксис
ну я уже понял с доки
источник

A

Alexander in jenkins_ru
Dmitry Burmistrov
с каким именно плагином? я их два знаю
а вообще смотреть в sh 'env'
Точно sh 'env'! Спасибо!
источник

mm

myname mylastname in jenkins_ru
Некогда я обращался с этим вопросом, но ответ тогда найден не был, поэтому возвращаюсь к этому вопросу в поиске оптимального решения не изобретая велосипед: "Как обеспечить перезапуск пайплайна через Restart from stage именно на той slave node, на которой он был запущен ранее?".
Попытка сделать через код внутри нужного Stage {} таким кодом:
agent { node { label "${env.NODE_NAME}" } }

просто логично висит с надписью "Ожидаю освобождения этой Node", т.к. установлено правило для всех nodes "1 executor", т.к. она занята самим этим же пайплайном.

Возможно, есть готовые примеры реализации через stash/nonstash ?
источник

ON

Olzhas Nuralinov in jenkins_ru
есть такой stage (он единственный):
stage ('Test') {
   environment {
       example = '@'
       test = java.net.URLEncoder.encode(example, 'utf-8')
   }
   steps {
       bat "echo test = ${test}"
   }
}

Jenkins крутится на винде и джоба запускается там же.
В логах пишется: test = 0
Я ожидаю: test =%40
Почему такое может быть?
источник

DS

Dmitry Sergeev in jenkins_ru
Olzhas Nuralinov
есть такой stage (он единственный):
stage ('Test') {
   environment {
       example = '@'
       test = java.net.URLEncoder.encode(example, 'utf-8')
   }
   steps {
       bat "echo test = ${test}"
   }
}

Jenkins крутится на винде и джоба запускается там же.
В логах пишется: test = 0
Я ожидаю: test =%40
Почему такое может быть?
либо
```
bat "echo test = ${env.test}"
```
либо
```
bat "echo test = %test%" (или как там в винде с переменными среды общаться? мб и c двойным процентом %%test%%, от винды можно ожидать любой упоротый синтаксис)
```
источник

DS

Dmitry Sergeev in jenkins_ru
хотя насчет декларатива и ${env.test}" я не уверен. Скорее всего не сработает в декларативе (если только не обернуть в script {}):
```
script {
 bat "echo test = ${env.test}"
}
```
источник

AI

Andrey Iakovlev in jenkins_ru
а можно ли настроить логирование на уровне джоба, чтобы лишняя в определенных случаях информация в лог не выводилась?
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Parallel build)
[Pipeline] parallel
[Pipeline] { (Branch: Build CRM)
[Pipeline] { (Branch: Build OMS)
[Pipeline] stage
[Pipeline] { (Build CRM)
[Pipeline] stage
[Pipeline] { (Build OMS)
[Pipeline] echo
[Build CRM]
...
источник

ON

Olzhas Nuralinov in jenkins_ru
Dmitry Sergeev
либо
```
bat "echo test = ${env.test}"
```
либо
```
bat "echo test = %test%" (или как там в винде с переменными среды общаться? мб и c двойным процентом %%test%%, от винды можно ожидать любой упоротый синтаксис)
```
с процентами этот случай отработал как надо. этот тест проводил, чтобы убедиться в правильном экранировании символов.
можно еще вопрос? хД
вот пайплайн:
stage ('Test') {
   environment  {
       someCredentialsWithDogInPass = credentials('someId')
       dogExample = "${someCredentialsWithDogInPass_PSW}"
       test = java.net.URLEncoder("${someCredentialsWithDogInPass_PSW}", 'utf-8)
       }
   steps {
       echo "bat test = %test%"
   }
}


Пароль равен @
здесь также ожидаю в логах test = %40, а получаю test = 2
источник

DS

Dmitry Sergeev in jenkins_ru
Olzhas Nuralinov
с процентами этот случай отработал как надо. этот тест проводил, чтобы убедиться в правильном экранировании символов.
можно еще вопрос? хД
вот пайплайн:
stage ('Test') {
   environment  {
       someCredentialsWithDogInPass = credentials('someId')
       dogExample = "${someCredentialsWithDogInPass_PSW}"
       test = java.net.URLEncoder("${someCredentialsWithDogInPass_PSW}", 'utf-8)
       }
   steps {
       echo "bat test = %test%"
   }
}


Пароль равен @
здесь также ожидаю в логах test = %40, а получаю test = 2
ну так someCredentialsWithDogInPass_PSW - вот эта переменная откуда?
источник

DS

Dmitry Sergeev in jenkins_ru
нигде ты ее не определяешь
источник

DS

Dmitry Sergeev in jenkins_ru
+ странно достаешь серкет. credentials() странный вызов. Не знаю как в декларативе, но в scripted использется withCredentials {}
источник

ON

Olzhas Nuralinov in jenkins_ru
Dmitry Sergeev
ну так someCredentialsWithDogInPass_PSW - вот эта переменная откуда?
источник

ON

Olzhas Nuralinov in jenkins_ru
Dmitry Sergeev
+ странно достаешь серкет. credentials() странный вызов. Не знаю как в декларативе, но в scripted использется withCredentials {}
просто так я в логе вообще не вижу, что с паролем не так
источник

ON

Olzhas Nuralinov in jenkins_ru
мне нужен вызов git команды с base auth авторизацией (в урле),
так вот валится на логине, хотя пароль явно верный. к сожалению, у меня нет возможности по другому сейчас использовать взаимодействие с гитом кроме как так.
источник