我在Travis-CI中运行一些自动化测试,而且我在理解某些奇怪的行为时遇到了麻烦。问题如下:有一个长命令使用了大量重定向:
bamtofastq filename=input.bam T=temp.fq-sort F=>(bgzip -c /dev/stdin > matched_1.fq.gz) F2=>(bgzip -c /dev/stdin > matched_2.fq.gz) S=/dev/null O=/dev/null O2=/dev/null collate=1 colsbs=1048576
参数S
,O
和O2
将输出重定向到/dev/null
,因此stdout中不应显示任何内容。如果我在本地运行测试一切正常,但是,当我在Travis中运行测试时,出于某种原因将这些输出重定向到stdout。请查看此构建日志,了解我的意思:https://travis-ci.org/guillermo-carrasco/bcbio-nextgen/builds/81020672
我真的不知道发生了什么。我甚至在容器内部执行了ls > /dev/null
的小测试,以查看docker镜像中/dev/null
是否存在问题,但它按预期工作。
任何关于考虑什么的想法都会非常感激。
非常感谢,
答案 0 :(得分:0)
解决了,显然只是将--privileged
添加到docker命令。这使得容器能够使用主机设备,即/dev/null
。非常感谢Travis-CI提出的建议:https://twitter.com/travisci/status/646027217147961344