web-dev-qa-db-ja.com

herokuコマンドラインでnpmを呼び出す方法(bowerコンポーネントをインストールするには)?

Bower はクライアント側のJavascript用で、サーバー側のnpmであり、component.jsonファイルを読み取って、デプロイ時にフェッチする必要がある依存関係を認識します。そのため、herokuがそれを実行すると嬉しいですスラッグのコンパイル時に。

残念ながら、私はherokuコンソールまたは1回限りのコマンド(heroku run "npm help")(heroku run bash-> npm help)からnpmまたはbowerを呼び出すことはできません。Rubyのレーキで可能だからです。 npmとノード(最新/ xバージョン)をpackage.jsonに入れましたが、依存関係ではなくエンジンセクションに入れました。

これは node buildpack をカスタマイズすることで解決できると思いますが、これは非常に明白なものをアクティブ化するためだけのちょっと重すぎるタスクだと思います。

31
Stefan

package.jsonpostintallコマンドを設定することもできます。

"dependencies": {
    "bower": "0.6.x"
},
"scripts": {
    "postinstall": "./node_modules/bower/bin/bower install"
}

次に、npm installはバウアー依存関係もインストールします。

Pros:それらすべてを支配する1つのコマンド。

短所:依存関係として不必要にバウアーを埋め込みます。

63
xavier.seignard

次のようにrunを使用できます。

heroku run npm install git://github.com/webjay/kaiseki
8
webjay

package.jsonファイルでNPMの依存関係を宣言する必要があります

シェルからインストールしたものはすべてシェル終了時に削除されます。クローンインスタンスにいます。

5
dani herrera