5

コンパスビルドパックをherokuサーバーにプッシュしようとしていますhttps://github.com/stephanmelzer/heroku-buildpack-nodejs-grunt-compass

最近まで動作していましたが、heroku 側で何が起こったのかわかりません。動作しなくなり、次のエラーが表示されます。

bash: /app/.gem/ruby/1.9.1/bin/compass: /app/vendor/ruby-1.9.2/bin/ruby: bad interpreter: No such file or directory

ルビーのバージョンか何かを変更したのか、何が起こったのかわかりません

誰かが問題と修正の可能性を知っていますか。

Cedar スタックを使用し、ノードを実行しています

4

5 に答える 5

2

これとまったく同じ問題があったため、受け入れられた回答にもう少し説明を追加したいと思います。ほとんどの人は、次のように古いビルドパックを設定解除する必要があると思います。

最初に古いビルドパックの設定を解除し、buildpack-multi を指定します。

heroku config:unset BUILDPACK_URL
heroku config:add BUILDPACK_URL=https://github.com/ddollar/heroku-buildpack-multi.git

Buildpack multi では、独自の .buildpacks ファイルを追加する必要があります。この構成は、私が最終的に正常に使用したものです。

cat .buildpacks
https://github.com/heroku/heroku-buildpack-nodejs.git
https://github.com/heroku/heroku-buildpack-ruby.git

コンパスのみをピックアップするための私のGemfileは次のとおりです。

cat Gemfile
source 'https://rubygems.org'
gem 'compass'

次に、次のことを行う必要があります。

bundle install

Gemfile.lock を追加するもの

すべてを git にコミットし、heroku にプッシュ バックします。これにより、新しいマルチ ビルドパック構成が開始され、正常に動作するようになります。上記の構成に従って、nodejs と ruby​​ ビルドパックの両方が連続してダウンロードされるのを確認する必要があります。

免責事項: Heroku は今後数か月で何かを変更する可能性が非常に高いため、これは時間に敏感な資料である可能性があります。

于 2014-09-07T20:03:58.927 に答える
0

マルチ ビルドパックをアプリで動作させることはできませんでしたが、https: //github.com/stephanmelzer/heroku-buildpack-nodejs-grunt-compass にあるビルドパックを取得して、Heroku で再び動作させることができました。

ビン/コンパイルで、追加しました

cp -r /app/vendor/ruby-1.9.2 $build_dir/vendor

スクリプトがキャッシュをチェックし、コンパスを更新またはインストールした直後で、ルビー宝石をキャッシュする前。

于 2014-11-05T02:45:22.690 に答える
0

編集

まあ、私は間違っていました。私たちの場合、compass:distSASS が悪いためにタスクが失敗していました。そして、最終的にこのエラーが発生しました。それを修正するための私のショットガンアプローチでは、Gruntfile heroku タスクを次のように編集しました。

grunt.registerTask('heroku', function () {
  grunt.log.warn('The `heroku` task has been deprecated. Use `grunt build` to build for deployment.');
  grunt.task.run(['compass:dist']);
});

これがherokuへのデプロイで実行されたとき、エラーに気づきました。

ビルドパックも切り替えました。私は今、問題なく動作するように見えるこのビルドパックを使用しています。申し訳ありませんが、少し混乱しますが、お役に立てば幸いです。

以下の元の回答。

本当の答えではありませんが、まだコメントできないので...

このエラーも表示されます。私たちが使用している heroku-node-compass ビルドパックのこの行に関係していると思います。

に追加しようとしruby: 2.0.0ましたGemfileが、違いはありませんでした。

于 2014-08-11T21:35:39.893 に答える