gpt4 book ai didi

java - 如何捕获 Jenkins 构建原因?由 GitLab 触发

转载 作者:行者123 更新时间:2023-11-30 05:42:49 25 4
gpt4 key购买 nike

在 Jenkins 文件(groovy 语法)中,使用 currentBuild.getBuildCauses('hudson.model.Cause) 中的 hudson.model.Cause$UserIdCause 获取手动构建操作(如果有)原因$UserIdCause')

<小时/>

hudson.triggers.SCMTrigger.SCMTriggerCause 在 Jenkins CI 中看起来已弃用 code .

    @Deprecated
public SCMTrigger(String scmpoll_spec, boolean ignorePostCommitHooks) throws ANTLRException {
super(scmpoll_spec);
this.ignorePostCommitHooks = ignorePostCommitHooks;
}
<小时/>

在来自 GitLab 的推送事件或合并事件中,Jenkinsfile 如何读取构建原因?

最佳答案

如果您希望在 Gitlab 触发器上执行阶段:

stage('stage') {
when {
triggeredBy "GitLabWebHookCause"
}
}

要获取 Gitlab 的数据,请使用以下语法:

currentBuild.rawBuild.getCause(com.dabsquared.gitlabjenkins.cause.GitLabWebHookCause).getData()

示例:获取最后一次提交

commit = currentBuild.rawBuild.getCause(com.dabsquared.gitlabjenkins.cause.GitLabWebHookCause).getData().getLastCommit()

GitlabWebHookCause 的文档: https://javadoc.jenkins.io/plugin/gitlab-plugin/com/dabsquared/gitlabjenkins/cause/GitLabWebHookCause.html

关于java - 如何捕获 Jenkins 构建原因?由 GitLab 触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55360677/

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