我有一个 YAML 文件,如下所示。让\xe2\x80\x99s 说*.md 文件已提交,构建不起作用,但测试起作用。这里我怎样才能使测试依赖于构建?就像如果构建不工作,测试应该工作。
\n提前致谢。
\nbuild:\n stage: build\n script:\n - echo "Build is running"\n only:\n changes:\n - Dockerfile\n - requirements.txt\n - ./configs/*\ntest:\n stage: test\n script:\n - echo "Test is running"\n - echo "$CI_JOB_STAGE"\n dependencies:\n - build\nRun Code Online (Sandbox Code Playgroud)\n
这应该是stages定义的
用于
stages定义包含作业组的阶段。
stages是为管道全局定义的。
在作业中使用stage来定义作业属于哪个阶段。项目的顺序
stages定义了作业的执行顺序:
- 同一阶段的作业并行运行。
- 下一个阶段的作业在上一个阶段的作业成功完成后运行。
例如:
Run Code Online (Sandbox Code Playgroud)stages: - build - test - deploy
- 构建中的所有作业并行执行。
- 如果构建中的所有作业均成功,则测试作业将并行执行。
- 如果测试中的所有作业均成功,则部署作业将并行执行。
- 如果部署中的所有作业均成功,则管道将标记为已通过。
如果任何作业失败,管道将被标记为失败,并且后续阶段的作业不会启动。
当前阶段的作业不会停止并继续运行。
所以,就你而言:
stages:
- build
- test
Run Code Online (Sandbox Code Playgroud)
test如果失败则不会运行build。
| 归档时间: |
|
| 查看次数: |
9248 次 |
| 最近记录: |