Gitlab-ci-概述中管道状态为“成功”

时间:2020-05-28 07:38:35

标签: gitlab yaml gitlab-ci

我的 func sendTokenId() { \\ code to send token to server } 文件如下:

.gitlab-ci.yml

如您所见,有always_on: before_script: - echo 'before_script' script: echo 'script done' always_fail: before_script: - echo 'before_script' script: fail_now backend_only_mr: only: refs: - merge_requests - master changes: - scripts/**/* before_script: - echo 'before_script' script: echo 'script done' 个作业总是失败。如果我在always_fail目录中没有任何更改,则工作正常,并且合并请求概述显示管道失败:

Overview - Normal case

当我在scripts目录中进行了更改时,该作业将按预期方式失败,但是概述显示该作业已成功,因为scripts已成功完成:

Overview - Change in scripts

工作如下:

Job - Merge request Job - Always running

backend_only_mr被标记为backend_only_mr(如果有帮助的话)。

1 个答案:

答案 0 :(得分:1)

这是当前预期的行为,因为两个管道分别为提交和合并请求运行。然后,合并请求管道会在提交失败之后“通过”传递,而GitLab则认为它已通过。

有两种方法可以解决此问题:

  1. 在每个要计数的工作上指定only: merge_requests,以反对“我们可以合并吗?”
  2. 新的全局workflow setting允许您说“我希望我的所有作业都在合并请求管道上运行”。
  3. 合并后的管道应如何工作一直存在许多问题。很乐意在您的反馈中。

您还可以在https://docs.gitlab.com/ee/ci/yaml/#key-details-when-using-rules上进一步了解rules:only/except:975900 /m/03vyhn Ghosts of Mars 2001-08-24 14010832 98.0 {"/m/02h40lc": "English Language"} {"/m/09c7w0": "United States of America"} {"/m/01jfsb": "Thriller", "/m/06n90": "Science Fiction", "/m/03npn": "Horror", "/m/03k9fj": "Adventure", "/m/0fdjb": "Supernatural", "/m/02kdv5l": "Action", "/m/09zvmj": "Space western"} 3196793 /m/08yl5d Getting Away with Murder: The JonBenét Ramsey Mystery 2000-02-16 95.0 {"/m/02h40lc": "English Language"} {"/m/09c7w0": "United States of America"} {"/m/02n4kr": "Mystery", "/m/03bxz7": "Biographical film", "/m/07s9rl0": "Drama", "/m/0hj3n01": "Crime Drama"} 的解决方案。

相关问题