Continuous integration 允许Travis CI.yml中的非零返回码
我正在尝试设置Travis CI以生成latex报告。在构建latex报告时,必须重复一些步骤,因此第一次调用这些步骤时会有一个非零返回代码 我的travis.yml到目前为止Continuous integration 允许Travis CI.yml中的非零返回码,continuous-integration,latex,travis-ci,Continuous Integration,Latex,Travis Ci,我正在尝试设置Travis CI以生成latex报告。在构建latex报告时,必须重复一些步骤,因此第一次调用这些步骤时会有一个非零返回代码 我的travis.yml到目前为止 language: R before_install: - tlmgr install index script: - latex report - bibtex report - latex report - latex report - dvipdf report.dv
language: R
before_install:
- tlmgr install index
script:
- latex report
- bibtex report
- latex report
- latex report
- dvipdf report.dvi report.pdf
然而在Travis文档中,它表示
如果脚本返回非零退出代码,则生成失败,但在标记为失败之前继续运行
因此,如果我的第一个latex report
命令具有非零返回代码,则构建将失败
我只希望在最后一个latex报告
或dvipdf报告
失败时构建失败
有人有什么想法或帮助吗
提前谢谢。与您最初的问题没有直接关系,但我也有同样的问题 我找到了一个解决方案。这可以根据需要多次运行latex和bibtex 如果查看我的Travis配置文件: 您将看到,只需将其添加到apt依赖项中即可
然后您可以这样运行它:
latexmk-pdf-xelatex[您的胶乳文件]
只需将| | true
附加到您的命令中即可
(复杂)例如:
- docker命令返回<0(因为这是一个否定测试),但我们还是要继续
-stderr被转发到stdin(稍后由2>&1
获取)grep
-输出被打印(用于调试)并转发给greptee
- 最后,
断言输出是否包含必需的字符串。如果没有,则grep
返回>0生成失败。grep
如果我们想忽略
s结果,我们需要在grep之后再添加一个grep
| | true
取自。Do
command | | true
忽略command
的返回值。
- (docker run --rm -v $(pwd)/example:/workdir stocker-alert || true) 2>&1 | tee >(cat) | grep 'Price change within 1 day'