我已经在指向Openshift的bitbucket服务器上配置了webhook。我想从我的内联jenkinsfile中的webhook有效负载中获取GIT repo url、git分支等,但我不知道如何检索它们。(Webhook触发器构建)。
有可能吗?
这是我的BuildConfig
apiVersion: build.openshift.io/v1
kind: BuildConfig
metadata:
labels:
application: spring-demo
template: openjdk18-web-basic-s2i
name: spring-demo
spec:
output:
to:
kind: ImageStreamTag
name: 'spring--demo:latest'
runPolicy: Serial
source:
type: None
strategy:
jenkinsPipelineStrategy:
jenkinsfile: |-
pipeline {
agent {
label 'maven'
}
stages {
stage('Build') {
steps{
sh "echo ${env.BRANCH_NAME}" <<<<------------- this is null
}
}
}
}
type: JenkinsPipeline
triggers:
- bitbucket:
secretReference:
name: yoyo
type: Bitbucket
--谢谢。
发布于 2018-06-01 20:50:18
根据this stack overflow question和some Jenkins documentation的说法,您需要在Jenkins实例上安装git plugin。然后,您可以通过${env.GIT_BRANCH}
和${env.GIT_URL}
获得变量GIT_BRANCH
和GIT_URL
。确保您的分支名称中没有斜杠(例如release/1.2.3),因为这会混淆Jenkins中的许多关键工具。
或者,作为最后的手段,在Jenkins scripted pipeline中,如果您知道不会经常更改分支,则可以通过参数或默认值(如"master")设置自己的环境变量。
https://stackoverflow.com/questions/50643501
复制相似问题