Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Right now we migrate code via CVS export and rsync by using cvs rtag TAG MODULE1 MODULE2. and then using psync (a perl wrapper around rsync that has a config file to do multiple rsyncs).

    Anyway, I recently was battling this exact same problem when upgrading DBI and DBD::Sybase on our servers and I wanted to changes to go with the migration (I also wanted a way to roll back in case all HELL broke loose)

    My solution was to make a new CVS module called CPAN and then install the CPAN modules into that directory:

    perl -ICPAN Makefile.PL LIB=CPAN
    make
    make test
    make install

    I then went into the CPAN directory and did a cvs add on all the files that were installed (made sure I did cvs add -kb for binary files to turn off keywords and tell CVS its binary).

    This solution really rocks because now I can take a migration including new or upgraded CPAN modules I'm using and then I can forget about it (no more having to update 20 servers with the udpates modules).

    One short coming I found that even though I did a perl -ICPAN Makefile.PL, I found that when I did the make test the tests didn't include the CPAN directory and this boggles me a bit when DBD::Sybase compiled against a newer version of DBI, but when the tests ran they didn't include the CPAN directory and everything failed :( (solved this by editing the 10 test to include my new foreign library path but I'm sure there is an easier way to do this)

    --

    -biz-