如果测试失败,则停止/失败Docker构建

时间:2019-10-21 10:38:46

标签: python unit-testing docker

我的目的是在未通过单元测试的情况下强制docker构建失败。我在DockerFile中使用以下行:

RUN python3 -m unittest discover test

我的单元测试在测试目录中的类中。测试已经运行,但是测试失败不会导致构建失败。

我知道非零退出代码是如何停止构建,但是使用此命令似乎不会发生。

1 个答案:

答案 0 :(得分:0)

有同样的问题:如果在Azure管道中unittest失败,则docker构建失败 我将以下代码放入build.yml文件中。

errors=$(docker logs careplan-tests-1 2>&1 | grep "FAILED" -c) if [ $errors > 0 ]; then echo -e "unittest tests failed" docker rm apiunittest exit 1 fi

将输出显示为“ ## [error] Bash以代码'1'退出”。在docker构建中失败,并且导致Azure管道失败。