2017-01-24 24 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

這很好用,謝謝爵士! –