2011-11-07 15 views
5

Un rotaie progetto 3.0.x sto lavorando con utilizza una gemma che contiene una grande quantità di dati di test che non è necessario per la distribuzione Heroku. Vorrei escludere questo dal guscio di heroku, in quanto aggiunge alcune decine di mega allo slug (e ci ha spinto oltre il limite di 100mb diverse volte, la nostra lumaca è grande per altri motivi.)esclude i file di gemme da lumache Heroku (usando .slugignore, Heroku)

Ho ho provato a farlo usando il meccanismo .slugignore, ma non riesco a trovare un modo per farlo escludere i file in gemme anziché nei file nell'app. Questa è un'applicazione di rails 3.0.x in esecuzione sullo stack di bambù, ma vorrei eseguire l'aggiornamento a rails 3.1 e/o allo stack di cedro se c'era una soluzione/soluzione in quelle versioni.

Altri suggerimenti su come risolvere questo problema "non rendono l'enorme gemma più piccolo" sono anche grandi ed estremamente benvenuti.

risposta

0

Nella pila di cedro le gemme sono installate nella cartella vendor (il percorso effettivo è qualcosa come vendor/bundle/ruby/1.9.1/gems/), quindi credo che sia possibile spostare i sottotracciati di cui si ha bisogno, anche se non l'ho ancora provato.

+0

che non ha funzionato. .slugignore non sembra essere ricorsivo. peccato ... ci sono molte cose inutili tra le gemme che non sono necessarie in slug. – dsaronin

0

Nel caso di utilizzo generale, questo non funzionerà perché i file con corrispondenza di .slugignore vengono eliminati prima di installare i file gem. Vedere il seguente bit di output di distribuzione di heroku:

-----> Deleting 2 files matching .slugignore patterns. 
-----> Ruby/Rails app detected 
-----> Installing dependencies using Bundler version 1.3.0.pre.5 
     Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment 
     Using rake (10.0.3) 
     Using Platform (0.4.0) 
     Using open4 (1.3.0) 
     ...