旧それなりブログの跡地、画像やスタイルやJSなどが壊れてることがあります。

npm run-script のサブコマンドへ引数を渡したかった

2014年9月5日

npm モジュールを開発する際、自分は主に npm test へコマンドをラップしたスクリプトを書いてテストしています。

その場合、以下のようにサブコマンド側へ args や flags を渡したいことがあります。

例えば、mocha コマンドを npm test に設定したとして:

scripts: {
  test: "mocha"
}

シェルから呼び出す際に:

npm test --grep キーワード

こういった mocha コマンドへのオプションを実行毎に渡したいな、と。

現状は無理っぽい

英語力が残念なので多分ですが、この辺によると:

Passing flags and arguments into run-script #3494
standalone npm-exec #6053

現在は無理のようです。

将来的には npm-exec がどうにかしてくれるという文脈でしょうか・・・?

(例を見た感じ、逆に複雑なので、それなら node node_modules/.bin/mocha --grep キーワード と実行したり、他の方法でラップした方がいいのではという感想です)

ちなみに mocha へ固定オプションを渡したいなら

mocha.opts で可能でした。

追記: 2014/10/13

npm 2.0 から引数が渡せるようになるみたいです!

書式はこんな感じでした。
-- でサブコマンド側の引数を認識する仕組みでした。