jenkins – 摩卡testing运行在docker应用程序失败,没有任何信息

我刚开始使用jenkins进行持续集成。 出于某种原因,每当我运行我的testing时,他们都会在jenkins控制台输出中没有告诉我任何东西。 正如你可以看到下面,我只是被告知,操作失败。

sudo docker run -e NODE_ENV=test -e Q_DEBUG=1 --rm=true --link mongo:mongo --link redis:redis -it -P company/myapp:branch npm test Build step 'Execute shell' marked build as failure 

我知道在这个版本中有一个错误会导致testing失败,所以这种行为并不是意想不到的,但为什么它没有给出我为什么失败或testing输出的信息?

我知道这是一个古老的线程,但我只是碰到了同样的问题。 结束了这是2个问题( http://www.hostingadvice.com/how-to/install-nodejs-ubuntu-14-04

  1. Ubuntu中的“节点”可能是一个业余的无线电广播节目。 你需要删除这个
  2. “apt-get”默认安装节点v0.10.29。 我需要v0.12.0的其他问题(一旦我解决了第一个问题,我得到了与“util”怪异的问题。最终成为节点版本)

我更新了我的Dockerfile如下

 FROM ubuntu:14.04 RUN apt-get remove --purge node RUN apt-get update RUN apt-get install -y \ wget RUN wget http://nodejs.org/dist/v0.12.0/node-v0.12.0-linux-x64.tar.gz RUN tar -C /usr/local --strip-components 1 -xzf node-v0.12.0-linux-x64.tar.gz 

在做出上述2个改变之后,摩卡跑了罚款并且打印了消息到terminal。

尝试docker-ci ,这是非常容易和透明的方式来进行持续集成。 你可以看到容器吐出的所有东西。

你可以尝试这样的事情:

 @run image : you_code_image name : you_code_image cmd : mocha test/ daemon : false @run image : you_code_image name : you_code_image cmd : node app.js daemon : true 

它将首先运行testing,相应地打印所有东西,然后启动你的容器(如果你的testing是可以的)