2017-01-24 21 views
1

关于SO的第一个问题...抱歉,如果这出问题。如何从Travis-CI.org上的Node.js子进程调用“mongoimport”?

我正在使用Mocha测试Node.js模块。该模块使用child_process.exec()来调用mongoimport命令......如果一切顺利,它应该将一些测试数据加载到MongoDB数据库中。

所有测试都通过我的笔记本电脑(节点6.9,MongoDB的V3.4.1),但是当我移动到使用Travis-CI.org事情失败:

{ 
"killed": false, 
"code": 127, 
"signal": null, 
"cmd": "mongoimport -h localhost:27017 -d test -c test_planets --type json --file \"/tmp/planet.json\" --upsertFields planetName" 
} 

......因为,我想,这是找不到mongoimport命令?

SO帮点我似乎工作的伟大获得V3 MongoDB的旋转加速这一.travis.yml文件:

language: node_js 
node_js: 
    - "6.9" 
sudo: false 
addons: 
    apt: 
    sources: 
     - mongodb-upstart 
     - mongodb-3.0-precise 
    packages: 
     - mongodb-org-server 
     - mongodb-org-shell 

before_script: 
    - sleep 15 

...我很高兴MongoDB是可用的(其他测试已连接并通过)。我需要最新版本的所有新的插件。

  • 但我已经打了一个有关如何从一个Node.js的子进程上特拉维斯-CI运行mongoimport命令(新到为好)墙。它甚至有可能吗?

任何帮助非常感谢!

回答

2

只需添加 “的MongoDB-ORG-工具” 你.travis.yml文件的包款。这将使mongoimport命令可用。

+0

这很好用,谢谢爵士! –