HerokuでLaravel-Mixを利用する際の環境変数
HerokuでLaravel Mixを使っている際に、ビルドに失敗する時があり調べた結果、環境変数を追加するだけで対策出来たのでメモ。
症状
Herokuのビルドパックには heroku/nodejsとheroku/phpを入れておき、順番はnode.jsが先。
1 2 3 4 | |
この状態でpushしてデプロイするも、npmのインストールなどは走るがLaravel Mixのコンパイルが走らない状態(たぶん)。
ビルドログを見ると以下のようなエラーが出ている。
1 2 3 | |
依存関係が解消出来てないとかなんとか?
解決策
ググると以下の情報。
環境変数に、YARN_PRODUCTIONをfalseで追加してやるだけ。
環境変数を追加してやることで、devDependenciesから依存関係を取得するように指示してやる事が出来るよう。
First, set
YARN_PRODUCTIONto false using the following command. This tells Heroku to install the devDependencies in your package.json, but leaves NODE_ENV as production.
Google翻訳
まず、次のコマンドを使用して
YARN_PRODUCTIONをfalseに設定します。これは、あなたのpackage.jsonにdevDependenciesをインストールするようにHerokuに指示しますが、NODE_ENVをプロダクションとして残します。
記事の通り、上手く行ってなかった環境に環境変数を追加してやると無事、コンパイルされるようになった。