Continuous integration 如何使通过API调用另一个管道的Gitlab管道失败?
我有2份Gitlab回购协议:Continuous integration 如何使通过API调用另一个管道的Gitlab管道失败?,continuous-integration,gitlab,gitlab-ci,continuous-deployment,gitlab-api,Continuous Integration,Gitlab,Gitlab Ci,Continuous Deployment,Gitlab Api,我有2份Gitlab回购协议: 项目A 项目A的集成测试 如果集成测试失败,我想停止项目A的管道/构建,但当前即使集成测试失败,项目A管道也会通过 项目A的My.gitlab ci.yml定义了以下7个阶段: stages: - build - test - publish - dev-deployment - staging-deployment - trigger-integration-tests - prod-deployment 第二个最后阶段(触发集成测
.gitlab ci.yml
定义了以下7个阶段:
stages:
- build
- test
- publish
- dev-deployment
- staging-deployment
- trigger-integration-tests
- prod-deployment
第二个最后阶段(触发集成测试
)通过使用withcurl
,启动集成测试项目:
trigger-integration-tests:
stage: trigger-integration-tests
image: ubuntu:16.04
script:
- apt-get update && apt-get install -y curl
- "curl -X POST -F token=$INTEGRATION_TESTS_TOKEN -F variables[PROJECT_ID]=$CI_PROJECT_ID -F variables[BRANCH_NAME]=$CI_COMMIT_REF_NAME -F ref=master https://gitlab.mycompany.com/api/v4/projects/123/trigger/pipeline"
allow_failure: false
only:
- master
我尝试添加allow\u failure:false
标志,但没有帮助,因此我正在寻找更多的想法
我找到了,但不确定是否有更简单的解决方案。如a上所述,您可以执行以下操作:
从主项目中,使用Python/Bash脚本:
正在运行
,挂起
,失败
,取消
或跳过
)轮询管道的