我正在開發一個Eclipse Virgo buildpack但是當我與Heroku的嘗試,並推trivial app,檢測失敗:如何調試定製的Heroku buildpack:發行腳本未被驅動
-----> Fetching custom git buildpack... done
! Heroku push rejected, no Cedar-supported app detected
的buildpack的檢測腳本本地工作細在應用程序的根目錄中:
$[...]virgo-buildpack/bin/detect .
Virgo Web
有關如何調試的任何提示?我嘗試讓偵測腳本寫入stdout和stderr,但是輸出不會出現在「heroku日誌」下。
我使用的是Mac OS X 10.8.2,Ruby 1.9.3p374和gems 1.8.23。
更新:繼前兩個答案之後,我使用bash檢測腳本在驅動detect.rb腳本之前安裝缺失的gem。我還更改了buildpack腳本以寫入標準輸出。
heroku推得到更多,但仍然失敗。我可以看到編譯腳本退出,但釋放bash腳本在開始時有一個echo命令,並且不會出現在輸出中。
所以看起來版本腳本沒有被調用。
輸出如下(#表示註釋,以避免混亂):
-----> Fetching custom git buildpack... done
# detect script enter and exit
Virgo Web app detected
# compile script enter and exit
-----> Discovering process types
Procfile declares types
-> (none)
# detect script enter and exit (again)
Virgo Web -> web
-----> Compiled slug size: 60.4MB
-----> Launching... ! Heroku push rejected, failure releasing code
Heroku的日誌 - 尾簡單地表示:
2013-03-06T10:53:48+00:00 heroku[slugc]: Slug compilation started
2013-03-06T10:54:27+00:00 heroku[slugc]: Slug compilation failed: failure releasing code
有趣的想法,但是當我推入平凡的應用程序加內置的buildpack,我得到同樣的失敗(Heroku推拒絕,沒有雪松支持的應用程序檢測到)。這並不奇怪,因爲heroku-buildpack-inline只是委託給內聯的buildpack。 但是,heroku運行bash可能會發現一個有用的線索 - 當我克隆組合的應用/內聯buildpack並嘗試運行它時,Ruby抱怨nokogiri gem沒有安裝。當我安裝它時,檢測腳本完美運行。所以我想我需要配置buildpack,以便heroku安裝必要的寶石。 – 2013-03-04 14:08:40
我更新了Gemfile和Gemfile.lock,以確保表達nokogiri依賴關係,但在推向heroku時仍然會出現同樣的錯誤。 – 2013-03-04 14:19:38
令人費解的是,環境變量PORT設置在heroku運行bash下,但是當推送到heroku驅動器檢測/編譯/釋放時,似乎沒有設置AFAICT。 – 2013-03-05 16:06:30