【问题标题】:Concourse Pipeline: How to have an Embedded Script Fail the PipelineConcourse 管道:如何让嵌入式脚本使管道失败
【发布时间】:2023-03-13 12:45:01
【问题描述】:

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

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

          python my_failing_python_code.py

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

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

谢谢

【问题讨论】:

    标签: python concourse concourse-pipeline


    【解决方案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

    【讨论】:

    • 脚本还有更多内容,我运行一些 bash 设置然后调用 python 脚本。我将实施set -e 并报告。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2019-03-18
    • 1970-01-01
    • 2021-02-19
    • 1970-01-01
    • 2021-11-03
    • 2019-08-24
    • 2018-06-03
    • 2021-09-14
    相关资源
    最近更新 更多