Il mistero della libreria
Vi devo ancora spiegazione di come ho risolto la questione delle librerie da caricare.
Come vi ho detto non avevo voglia di una soluzione complessa e così mi sono accontentato di una soluzione sporca: in pratica mi sono arreso all'idea di installare sul server tutte le librerie necessarie prendendole giù da CPAN, sperando di non introdurre incompatibilità.
Rimane il problema: come fare a capire quali sono tutte le librerie?
Per risolvere questo problema mi è venudo in aiuto perldoc perllocal, comando che vi permette di vedere tutte le librerie che avete installato nel vostro sistema. Ovviamente, se accendendete una sandbox via local::lib, censisce solo le librerie che, appunto, avete in quel contesto.
perldoc perllocal non fa altro che leggere un file pod. Purtroppo questo file è troppo human readable per fini di automazione quindi gli ho spremuto fuori il listone grezzo di librerie con un banalissimo script:
#!/usr/bin/perl my $input_file = $ARGV[0];
open(INPUT, "< $input_file"); for(<INPUT>) {
if(m/C<Module>/) { m/L<(.*)\|/; print "cpan -i $1\n"; } }
Come vedete a quel punto ho un bordello di cpan -i che, messi in uno script sh, partono praticamente da soli.
L'unica ottimizzazione che andrebbe fare è capire come far dire yes a CPAN in automatico :-)
Questo sistema mi ha permesso di completare il setup su server.
Ora c'è già qualcosina di vivo, ma prima di cantare vittoria devo imparare a usare mod_proxy e gestire le risorse statiche nella maniera giusta.
Musica nelle orecchie: http://www.youtube.com/watch?v=8a8rrHzQ_AE








