gpt4 book ai didi

git - 我们可以重新触发 gitlab 管道吗?

转载 作者:行者123 更新时间:2023-12-04 12:41:55 24 4
gpt4 key购买 nike

在 GitLab 中创建 merge 请求后, merge 请求失败,由于 jenkins 作业下定义的保留期,jenkins 删除了失败的作业日志。现在,我想仅从 gitlab 重新触发该特定 merge 请求,以便它将触发 jenkins 中的 merge 请求作业。是否可以 ?如果是,我该怎么做?

附注有一个从 Gitlab 到 Jenkins 定义的管道。每当在 gitlab 中创建 merge 请求时,它都会触发 Jenkins merge 请求作业,该作业将特定更改 merge 到 git master 分支。

最佳答案

是的,您可以重新触发 Gitlab 管道!
有两种选择:

  • 使用用户界面
  • 使用 Gitlab Api

  • 使用用户界面
  • 在您的项目中转到 CI / CD :https://gitlab.com/{user/organization}/{project}/pipelines
  • 然后点击绿色按钮Run Pipeline
  • 选择您提出 merge 请求的分支。
  • 点击 Create Pipeline按钮。

  • 这将创建并运行 gitlab 管道。

    使用 API
  • 确保您有 token可用,可以使用 Gitlab API。
  • 做个 发布 调用 gitlab.com/projects/:id/trigger/pipeline
  • 您可以运行 curl 命令来执行此操作
  • curl -X POST -F token=TOKEN -F ref=BRANCHNAME https://gitlab.com/api/v4/projects/7471909/trigger/pipeline


  • 如果要触发 build manually在 Jenkins 中,您还可以将 api 与参数化构建结合使用:
    curl -X POST JENKINS_URL/job/JOB_NAME/build --user USER:TOKEN  --data-urlencode json='{"parameter": [{"name":"branch", "value":"master"}]}'

    参数将是要构建的分支;例如,您的 merge 请求的分支。

    关于git - 我们可以重新触发 gitlab 管道吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54343432/

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