我正在尝试设置Travis CI以构建乳胶报告。在构建乳胶报告时,必须重复一些步骤,因此第一次调用它们时会返回非零的返回码。
到目前为止,我的travis.yml是
language: R
before_install:
- tlmgr install index
script:
- latex report
- bibtex report
- latex report
- latex report
- dvipdf report.dvi report.pdf
然而,在Travis Docs中,它说明了
如果脚本返回非零退出代码,则构建失败,但在被标记为失败之前继续运行。
因此,如果我的第一个latex report
命令具有非零返回码,则它将无法构建。
如果最后latex report
或dvipdf report
失败,我只希望构建失败。
有没有人有任何想法或帮助?
提前致谢。
答案 0 :(得分:1)
与您的原始问题没有直接关系,但我遇到了同样的问题。
我找到了使用latexmk的解决方案。这样可以根据需要运行乳胶和bibtex多次。
如果您查看我的Travis配置文件:
https://github.com/73VW/TechnicalReport/blob/master/.travis.yml
您将看到您只需将其添加到apt依赖项中即可。
然后您可以像这样运行它:latexmk -pdf -xelatex [Your_latex_file]
答案 1 :(得分:1)
只需将|| true
附加到您的命令即可。
(复杂)示例:
- (docker run --rm -v $(pwd)/example:/workdir stocker-alert || true) 2>&1 | tee >(cat) | grep 'Price change within 1 day'
2>&1
-stderr被转发到stdin(稍后由grep
接收)tee
-输出输出(用于调试)并转发到grep grep
声明输出是否包含必需的字符串。如果不是,grep
将返回> 0,从而使构建失败。grep
的结果,则在grep之后需要另外一个||true
。