gpt4 book ai didi

groovy - Jenkins Groovy : What triggered the build

转载 作者:行者123 更新时间:2023-12-01 14:49:57 24 4
gpt4 key购买 nike

我正在考虑在 Jenkins 中为我的构建工作使用 Groovy 脚本,因为我有一些条件需要检查,可能需要访问 Jenkins API。

是否可以从 Groovy 脚本找出谁或什么触发了构建? SCM 更改、另一个项目或用户。我刚刚开始阅读有关 Groovy 和 Jenkins API 的一些内容。

我想检查以下条件并相应地构建。一些伪代码:

def buildTrigger JenkinsAPI.thisBuild.Trigger
if (buildTrigger == scm) {
execute build_with_automake
def new_version = check_git_and_look_up_tag_for_version
if (new_version) {
execute git tag new_release_candidate
publish release_candidate
}
} else if (buildTrigger == "Build other projects") {
execute build_with_automake
}

该项目应该建立在每次 SCM 更改的基础上,但只有在版本增加时才进行标记和发布。当另一个项目触发构建时,它也应该构建。

最佳答案

我有类似的东西 - 我想得到触发构建的用户,这是我的代码:

for (cause in bld.getCauses()) {
if (cause instanceof Cause.UserIdCause) {
return cause.getUserName()
}
}

(bld 是 Run 的子类型)

因此,您可以获得构建的原因,并检查它们的类型。

请参阅 Cause javadoc http://javadoc.jenkins-ci.org/hudson/model/Cause.html 中的不同类型

关于groovy - Jenkins Groovy : What triggered the build,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28545155/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com