1. 程式人生 > 其它 >Jenkins獲取發版人的人名

Jenkins獲取發版人的人名

目錄

一.簡介

Jenkins在構建記錄中,是可以看到誰點的構建的,但pipeline中的全域性變數,預設是不支援獲取當前構建任務的構建人的,要想獲取構建人的資訊,只能通過外掛來幫助我們獲取。

主要用於構建通知,例如發版後將結果通過郵件、釘釘等方式發到群裡,這樣要附加一些資訊,可以將構建人加入進去。

外掛:build-user-vars-plugin
外掛下載地址,也可以用清華大學映象源

支援如下變數:

Variable Description
BUILD_USER Full name (first name + last name)
BUILD_USER_FIRST_NAME First name
BUILD_USER_LAST_NAME Last name
BUILD_USER_ID Jenkins user ID
BUILD_USER_GROUPS Jenkins user groups
BUILD_USER_EMAIL Email address

二.自由風格使用

安裝外掛後,在Maven專案或者自由風格中,需要勾選Set jenkins user build variables才可以在後續使用

三.pipeline使用

指令碼式

node {
    stage {
            wrap([$class: 'BuildUser']) {
                script {
                    BUILD_USER = "${env.BUILD_USER}"
                }                
            }        
    }
}

宣告式

1.在步驟呼叫

pipeline {
    agent any
    stages {
        stage('test') {
            steps {
                wrap([$class: 'BuildUser']) {
                    sh "ehcho $BUILD_USER"
                }
            }
        }
    }
}

2.在最前面定義,像post等操作,也是用wrap裹起來,裡面寫命令

pipeline {
    agent any
	post {
        success {
            wrap([$class: 'BuildUser']) {
                sh "/jen_script/dingding.py ${JOB_NAME} ${release_branch} 0 ${BUILD_NUMBER} ${BUILD_USER}"
			}
        }
        failure {
			wrap([$class: 'BuildUser']) {
            	sh "/jen_script/dingding.py ${JOB_NAME} ${release_branch} 1 ${BUILD_NUMBER} ${BUILD_USER}"
			}
        }
    }

    stages {
        stage('test') {
            steps {
                echo "xxx"
                }
            }
        }
    }
}
本文版權歸作者所有,歡迎轉載,請務必新增原文連結。