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_PRODUCTION
to 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をプロダクションとして残します。
記事の通り、上手く行ってなかった環境に環境変数を追加してやると無事、コンパイルされるようになった。