如何不从以前的阶段下载构建配置的工件?

时间:2017-12-05 15:52:50

标签: gitlab gitlab-ci

我有一个gitlab CI构建过程,包含4个步骤,其中第一步生成的工件在第2步中打包到docker镜像中,然后输出图像作为第3步的工件给出,之后有第4步,通知外部服务。

第二步需要步骤1中的工件,第三步需要步骤2中的工件。这是通过'dependencies'参数完成的,并且工作正常。

步骤4没有效果,不需要任何工件。我已经跳过了'dependencies'块,然后我声明了dependencies: [],但在这两种情况下都下载了两个工件!

如何正确通知gitlab CI该步骤没有依赖关系?或者它是Gitlab CI中的一些错误?

1 个答案:

答案 0 :(得分:9)

根据gitlab-ci documentation

To disable artifact passing, define the job with empty dependencies:

job:
  stage: build
  script: make build
  dependencies: []

我在这里发现了同样的问题:https://gitlab.com/gitlab-org/gitlab-runner/issues/228

这似乎已修复:https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/10359

请将您的CI Runner更新为更新的版本,因为它应该修复它。