t.me/atinfo_chat Telegram группа по автоматизации тестирования

При сборке проекта Jenkins не распознает глобальные переменные!

groovy
gitlab
jenkins
Теги: #<Tag:0x00007f9e34178f98> #<Tag:0x00007f9e34178e58> #<Tag:0x00007f9e34178d18>

(bor_bor) #1

Добрый день, есть код сборки :

pipeline {
    agent any
    environment {
        BRANCH_NAME = "${env.GIT_BRANCH}"
        TAG = "${BUILD_TAG}"
        USER = "${env.GIT_AUTHOR_NAME}"
        USER2 = "${env.GIT_COMMITTER_NAME}"
        USER3 = "${env.gitlabUserName}"
    }
    tools {
        maven 'Maven_jenkins'
    }
    stages {
        stage('Work') {
            steps {
            
                echo 'Show branch 3 ...' + BRANCH_NAME
                echo 'Show branch 3.2 ...' + "${env.BRANCH_NAME}"
                echo 'Show tag ...' + TAG

                echo 'Show USER ...' + USER
                echo 'Show USER2 ...' + USER2 
                echo 'Show USER3 ...' + USER3 
                
                ***
            }
        }     
        stage('Nexus(branch)') {
            when {
                branch 'master'
            }
            steps {
                  ***
            }
        }
        
        stage('Nexus(tag)') {
            when {
                tag 'releasу'
                anyOf{
                    branch 'master'
                }
            }
            steps {
                ***
            }
        }
    }
    post {
        success{
            script {
                ***
            }
        }
        failure{
            script{
                ***
            }
        }    
    }
}

Получаю следующий кусок консоли:

Show branch 3 ...master
[Pipeline] echo
Show branch 3.2 ...master
[Pipeline] echo
Show tag ...jenkins-Test new item-master-53
[Pipeline] echo
Show USER ...null
[Pipeline] echo
Show USER2 ...null
[Pipeline] echo
Show USER3 ...null

Почему не определяется USER. Мне нужно определить имя того, кто делал коммит, по которому производится сборка.
Репозиторий находится на GitLab. Проект запущен посредством использования веб-хука в настройках интегарции.
Заранее спасибо за ответ.


(Vladislav Abramov) #2

сервис дженкинса перезапустили? иначе может не подхватывать новые переменные среды


(bor_bor) #3

У меня мало опыта в использовании Jenkins, только учусь…
Вы под перезапуском подразумеваете, остановку и обновление всего Jenkins?

Просто в других проектах, Jenkins видит эти переменные, например в обычном PIPELINE, а тут решил запихнуть проект в MULTIBRANCH.