sam0737 has asked for the wisdom of the Perl Monks concerning the following question:

My webapp depends on quite a few modules. When I deploy on a remote server, I have to cpanm to re-install all the modules, which has the following issues...

So I want to redistribute them when I deploy. I could almost use PAR, but I can't because I don't want want to do that in binary form - as the Perl version, architecture might be different.

Module::Install::Bundle is the closet I have found. Upon specifying the prereq, it can auto fetch the modules and all its dependencies (up to core module) from CPAN. Module does build and test, but "make install" does nothing - it doesn't install those prereq at all.

UPDATE 1: Carton, if I am not mistaken, it can still only redist the binary version (install --cached), or fetch from the Internet. I should have mentioned including private module/patch is one of my goals.

Is there something I have missed?

Thanks.

  • Comment on Bundling perl prereq module in source form for deployment?

Replies are listed 'Best First'.
Re: Bundling perl prereq module in source form for deployment?
by davido (Cardinal) on Sep 23, 2012 at 00:31 UTC

    There's nothing preventing cpanm from being used on private repositories. Recently Pinto was announced right here at the Monastery: Announcing: Pinto. It seems to be designed to assist with at least some of the issues you mentioned (Speed isn't addressed. Run your tests in parallel, and re-run sequentially those that fail.)

    cpanm is a pretty powerful tool though; you can point it at a link to a tarball of a distribution, for example. You could literally maintain a site that contains all the distributions needed for your code, and then use Perl and cpanm to script the full install.


    Dave

Re: Bundling perl prereq module in source form for deployment?
by choroba (Cardinal) on Sep 22, 2012 at 19:59 UTC
    Crossposted at Stackoverflow. It is considered polite to inform about crossposting so people not attending both sites do not waste their time solving a problem already solved at the other end of the internets.
    لսႽ† ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ
Re: Bundling perl prereq module in source form for deployment?
by Anonymous Monk on Sep 22, 2012 at 21:30 UTC