テスト環境を構築するときだけノードモジュールをインストールしてもらいたいです。を実行しても、devDependencies
とoptionalDependencies
はインストールされますnpm install <the-module>
。代わりに、これらを に保存しtestDependencies
ます。npm install
これを行うには、JSON オブジェクトからキーを取得し、それをコマンドにパイプするための *NIX ワンライナーがあればいいでしょう。これは travisci に使用でき、デフォルトのインストールでこれらの余分なライブラリがインストールされないようにします。
package.json ファイルをどのように読み取り、キーを抽出してモジュール名を取得し、実行しnpm install <keys>
ますか? package.json は次のようになります。
{
"name": "the-module",
"dependencies": {
"express": "2.x"
},
"devDependencies": {
"ejs": ">= 0.6.1"
},
"testDependencies": {
"mocha": ">= 0.8.1",
"chai": ">= 0.3.3",
"sinon": ">= 1.3.1"
}
}
実行するコマンドは次のようになります。
npm install mocha chai sinon
このようなことをしようとしています:
npm install $(read-json ./package.json | extract-keys)