2011-01-18 13 views
8

Voglio costruire un mirror rubygems accessibile per alcuni server sul posto di lavoro (che non hanno accesso a Internet), quindi ho iniziato come tutti sembrano fare :C'è un modo per impostare un mirror minimo rubygems (con solo le ultime versioni)

$ cat gemmirror.config 
--- 
- from: http://gems.rubyforge.org 
to: /data/rubygems/mirror 

$ gem mirror --config-file=gemmirror.config 

Il mirror inizia a sincronizzare correttamente. OK. Ma aspetta, scarica l'intero contenuto di http://gems.rubyforge.org! Intendo tutte le versioni esistenti di ogni singola gemma. Wow. Dopo un paio d'ore sto ancora scaricando le gemme che iniziano con la lettera "L" ...

Per non parlare dello spazio su disco che lo specchio sta per prendere.

Ora la mia domanda: c'è un modo per configurare un server "mini" rubygems, come CPAN :: Mini consente Perl: tale mirror conterrebbe solo l'ultima versione di ogni gemma. Questo è nel 99,9% dei casi ciò che la gente vuole, immagino (almeno questo sarebbe perfettamente buono per me lì).

Ho cercato su Google molto e purtroppo non riesco a trovare alcun riferimento a questo.

Se qualcuno può indicarmi il modo di farlo, lo apprezzerei molto.

Grazie!

risposta

1

Non proprio quello che stai chiedendo, ma forse un modo per affrontare questo problema, è quello di configurare un proxy http di cache che memorizzerà nella cache le gemme così come sono richieste, il che dovrebbe causare richieste successive alla cache.

Qualcosa come squid dovrebbe fare il lavoro.

Poi ogni cliente configura il gem proxy di utilizzare calamari, quindi tutti i download gemma passare attraverso di essa e, auspicabilmente, sono nella cache 99% del tempo ...

Anche se si utilizza bundler, sembra che has issues with the proxy settings :(

Problemi correlati