2013-01-16 57 views
21

在我們的Python/Django應用程序的開發過程中,我們意外地在requirements.txt中引入了安裝衝突版本的庫的軟件包需求。 Heroku緩存了由python buildpack指定的CACHE_DIR中的破壞需求,如buildpack API info page所述,並且似乎沒有任何對requirements.txt文件的修改可以清除已破壞包的緩存。我們如何強制Heroku完全清空CACHE_DIR並從頭重新安裝所有需求和依賴關係?如何沖洗Heroku buildpack CACHE_DIR?

回答

7

我遇到了同樣的問題,因爲我試圖從源代碼安裝模塊(django-piston),因爲上一次正式發佈有點舊,並且缺少一些對我至關重要的錯誤修復。無論如何,之前已經出現了一個問題,我實際上得到了一個reply from support

這似乎有點奇怪給我,但至少它的工作原理(只要選擇任何的Python版本號在runtime.txt,重建,再改回所需的運行時間和再次重建)

+0

笨重的解決方案,但它解決了我的問題(有母鹿在這個時候似乎沒有更好的)。謝謝! –

+0

任何想法如何使用自定義的heroku-buildpack-php做到這一點?我調整了一個與Laravel 4一起工作,並且我得到它來編譯和部署,但它缺少pdo_pgsql,所以我想要新的php.ini文件,但它仍然卡在cache_dir中 – Lotus

-1

我能清除通過簡單地做出改變的readme.md文件緩存(添加了一些空格),提交和推

32

使用heroku-repo插件purge_cache命令:

$ heroku plugins:install heroku-repo 
$ heroku repo:purge_cache -a appname 
+1

這很尷尬。在Heroku上真的沒有用於構建/部署的'clean'開關?我們是否真的需要這個額外的步驟才能拋棄陳舊的緩存? –