我有以下 Travis CI yml 文件片段:
script:
- if [ $TRAVIS_BRANCH == "master" ]; then
sbt clean coverage test coverageReport docker:publishLocal;
fi
- if [ $TRAVIS_BRANCH == "/^develop-.*$/" ]; then
sbt clean coverage test coverageReport;
fi
Run Code Online (Sandbox Code Playgroud)
它有点工作,但我无法理解它产生的日志。这有点误导。这是来自构建服务器的日志:
[success] Total time: 22 s, completed Aug 8, 2017 5:29:28 PM
The command "if [ $TRAVIS_BRANCH == "master" ]; then sbt clean coverage test coverageReport docker:publishLocal; fi" exited with 0.
0.00s
$ if [ $TRAVIS_BRANCH == "/^develop-.*$/" ]; then sbt clean coverage test coverageReport; fi
The command "if [ $TRAVIS_BRANCH == "/^develop-.*$/" ]; then sbt clean coverage test coverageReport; fi" exited with 0.
Run Code Online (Sandbox Code Playgroud)
没有运行的东西怎么会以代码 0 退出?我宁愿期望它只是说,它跳过了那个脚本。你们有什么感想?
"if [ $TRAVIS_BRANCH == "master" ]; then sbt clean coverage test coverageReport docker:publishLocal; fi"
Run Code Online (Sandbox Code Playgroud)
travis 使用它作为步骤的命令。即使没有执行 if 语句的 'true' 分支,travis 仍然成功执行了一个命令,因此exit 0. 如果您想要跳过配置的消息,您必须自己添加它们
- if [ $TRAVIS_BRANCH == "master" ]; then
sbt clean coverage test coverageReport docker:publishLocal;
else
echo "Skipped"
fi
Run Code Online (Sandbox Code Playgroud)
此外,您的第二个检查可能不是您想要的。使用=~运算符启用正则表达式匹配,==只能使用全局模式匹配,AFAIK。
| 归档时间: |
|
| 查看次数: |
1246 次 |
| 最近记录: |