Jenkins pipeline中判断手动build和定时构建,然后将生成的文件分别放到不同的文件夹中,应该怎么做
时间: 2024-03-02 09:50:49 浏览: 160
你可以使用 `currentBuild.getCauses()` 方法来获取当前构建的原因,然后根据原因来判断是手动构建还是定时构建。例如:
```groovy
def isManual = false
def causes = currentBuild.getCauses()
for (cause in causes) {
if (cause.class.toString().contains("UserIdCause")) {
isManual = true
break
}
}
if (isManual) {
// 手动构建的逻辑
// 将生成的文件放到手动构建文件夹中
} else {
// 定时构建的逻辑
// 将生成的文件放到定时构建文件夹中
}
```
在上面的示例中,我们首先将 `isManual` 标识设为 false,然后使用 `currentBuild.getCauses()` 获取当前构建的原因列表。然后我们遍历原因列表,如果其中包含 `UserIdCause` 类型的原因,说明这是一个手动构建,我们就将 `isManual` 设为 true,并且跳出循环。最后,我们根据 `isManual` 的值来决定将生成的文件放到手动构建文件夹还是定时构建文件夹中。
当然,你需要根据实际情况修改上面的代码,比如根据不同的构建号来创建不同的文件夹等。
阅读全文