0

当我在运行参数中运行带有嵌套 Python 脚本的 Concourse 管道时,如下所示:

- task: some-task
    params:
      ...
    config:
      platform: linux
      ...
      run:
        path: bash
        args:
        - "-c"
        - |

          python my_failing_python_code.py

当 python 脚本失败并抛出退出 1 时,错误似乎不会像我预期的那样冒泡到管道中。总体而言,管道“成功”结束。

我应该如何设置我的管道以读取在管道中运行的脚本的退出状态?

谢谢

4

1 回答 1

1

如果这是脚本的全部内容,那么您可以将其替换为

run:
        path: python
        args:
        - my_failing_python_code.py

https://concourse-ci.org/hello-world-example.html

如果 shell 脚本还执行其他操作,则您缺少一个set -e, 来告诉 shell 报告错误:

    run:
        path: bash
        args:
        - "-c"
        - |
          set -e
          python my_failing_python_code.py

https://concourse-ci.org/tasks.html

于 2020-02-05T13:37:49.880 回答