Table of Contents [expand]
最終更新日 2024年12月03日(火)
ファイルの欠落エラー
設定済みの buildpack がアプリケーションを処理できない場合はエラーが発生します。たとえば、Heroku の Ruby buildpack では、アプリケーションのタイプを正しく識別するために、アプリケーションのルートフォルダに Gemfile が存在することが想定されています。アプリケーションの buildpack が heroku/ruby に設定され、Gemfile が存在しない場合、アプリケーションのビルドは失敗します。
このような状況は、以前アプリケーションのタイプの検出に使用できたファイルを削除したり、ファイル名を変更したりした場合にも発生する可能性があります。
たとえば、PHP で作成されたアプリケーションをプッシュする場合に、アセット処理用の npm パッケージを含む composer.json と package.json があると、アプリケーションは Node.js アプリケーションとして検出されます。
Cedar 世代のアプリ
package.json を削除しても、Cedar 世代のアプリに使用される buildpack は自動で再設定されません。クラシック buildpack は heroku/nodejs に固定されており、package.json なしで git push を試行するとエラーが発生します。
クラシック buildpack の場合、このエラーを解決するには手動で buildpack をクリアするか、アプリに必要な buildpack を設定する必要があります。この例では heroku/php です。
Fir 世代のアプリ
Cloud Native Buildpack の場合は、project.toml ファイルで buildpack を管理します。これらのアプリでは自動で固定されません。