Как вызвать "mongoimport" из дочернего процесса Node.js на Travis-CI.org?
Первый вопрос на SO... извините, если это пойдет не так.
Я использую Mocha для тестирования модуля Node.js. Модуль использует child_process.exec()
позвонить mongoimport
команда... если все идет хорошо, следует загрузить некоторые тестовые данные в базу данных MongoDB.
Все тесты проходят на моем ноутбуке (Node 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 помог мне указать на этот файл.travis.yml, который, кажется, прекрасно работает для запуска V3 MongoDB:
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 доступен (другие тесты подключены и пройдены). Мне нужна свежая версия для всех новых вещей.
- Но я врезался в стену о том, как запустить
mongoimport
команда от дочернего процесса Node.js в Travis-CI (также новичок в этом). Это вообще возможно?
Любая помощь очень ценится!
Тим
1 ответ
Просто добавьте "mongodb-org-tools" в раздел пакетов вашего файла.travis.yml. Это сделает команду mongoimport доступной.