Jenkins pipeline中环境变量BUILD_CAUSE是什么函数
时间: 2024-03-05 14:47:36 浏览: 143
`BUILD_CAUSE`不是Jenkins Pipeline中的函数,而是Jenkins中预定义的一个环境变量。在Jenkins中,每次构建都会产生一些环境变量,这些环境变量包含了构建相关的信息,例如构建号、构建时间、构建原因等等。
`BUILD_CAUSE`环境变量用于记录构建的原因,它可以告诉我们这次构建是由哪个事件触发的,例如手动触发、定时触发、代码提交触发等。在Jenkins Pipeline中,可以通过读取`BUILD_CAUSE`环境变量的值来判断本次构建的原因。
在Pipeline中,可以使用`env.BUILD_CAUSE`来获取`BUILD_CAUSE`环境变量的值。例如:
```
stage('Build') {
steps {
echo "Build cause: ${env.BUILD_CAUSE}"
}
}
```
这个例子展示了如何在Pipeline中输出`BUILD_CAUSE`环境变量的值。当运行到这个阶段时,它会输出当前构建的原因。
相关问题
Jenkins pipeline中${BUILD_TIMESTAMP}显示的时间,如果用它作为文件夹名称应该怎么做
要在Jenkins Pipeline中使用${BUILD_TIMESTAMP}作为文件夹名称,你可以使用以下步骤:
1.在Pipeline中使用echo语句打印${BUILD_TIMESTAMP}的值,以确保它可以正常工作。
2.使用Jenkins的mkdir命令来创建一个基于${BUILD_TIMESTAMP}的文件夹,如下所示:
```
mkdir "${BUILD_TIMESTAMP}"
```
这将创建一个名为${BUILD_TIMESTAMP}的文件夹,该文件夹将位于Pipeline工作区的根目录中。
3.如果你需要在${BUILD_TIMESTAMP}文件夹下创建更多的文件夹,你可以使用以下命令:
```
mkdir "${BUILD_TIMESTAMP}/subfolder"
```
这将在${BUILD_TIMESTAMP}文件夹下创建一个名为subfolder的子文件夹。
请注意,在Jenkins Pipeline中使用变量时,需要将变量名放在双引号中,以确保它们被正确地解析和替换。
Jenkins pipeline中使用sheel脚本if判断env.BUILD_CAUSE这个变量怎么使用
在Jenkins pipeline中,可以通过if语句判断env.BUILD_CAUSE变量的值。env.BUILD_CAUSE变量表示触发构建的原因,如用户手动触发、定时器触发、SCM变更触发等。
以下是一个使用if判断env.BUILD_CAUSE的示例:
```groovy
pipeline {
agent any
stages {
stage('Example') {
steps {
sh '''
if [ "$BUILD_CAUSE" = "MANUALTRIGGER" ]; then
echo "This build was triggered manually."
else
echo "This build was triggered by $BUILD_CAUSE."
fi
'''
}
}
}
}
```
在这个示例中,如果构建是通过手动触发的,则输出"This build was triggered manually.",否则输出"This build was triggered by $BUILD_CAUSE.",其中$BUILD_CAUSE会被替换为实际触发构建的原因。
阅读全文