So recently I started CPAN smoking using blead perl and had a few requests from other people on how to set up CPAN smoking using bleadperl.
Well I found it is relatively easy to do, since blead perl now includes CPANPLUS.
Here's how you do it:
First off install POE::Component::CPAN::YACSmoke in your system perl using either cpan or cpanp. It is advised that Proc::ProcessTable is installed when prompted. This will install the minismoker script which we will use later on.
Okay. Let's install blead perl.
I usually install my testing perl in the home directory of a non-privileged user account.
$ mkdir -p blead/bin $ mkdir -p build/bleadperl $ cd build/bleadperl $ rsync -avz rsync://ftp.linux.activestate.com/perl-current/ .
This will pull blead perl source down to the current directory. Then run ./Configure. Take the defaults ( or change to taste, such as enabling threading, etc. ), except when prompted for the installation prefix.
$ ./Configure Installation prefix to use? (~name ok) [/usr/local] /home/chris/blead
Then compile, run the testsuite and install
$ make && make test && make install
Assuming everything went okay we should have blead perl installed under /home/chris/blead
$ cd $ export APPDATA=/home/chris/blead/
Setting APPDATA forces CPANPLUS to locate its .cpanplus directory under /home/chris/blead/. Now let's configure cpan ( only answers different to the defaults are shown ):
$ /home/chris/blead/bin/cpan5.9.5 Would you like me to configure as much as possible automatically? [yes] no CPAN build and cache directory? [/home/chris/.cpan] /home/chris/blead/.cpan Policy on building prerequisites (follow, ask or ignore)? [ask] follow Parameters for the 'make install' command? Your choice: [] UNINST=1 Parameters for the './Build install' command? Your choice: [] --uninst 1
Okay, cpan is configured. Let's install a few required modules:
cpan> install YAML cpan> install LWP cpan> install Test::Reporter cpan> quit
Okay, we are finished with cpan. Let's configure cpanp ( again only changes to the defaults are shown ):
$ /home/chris/blead/bin/cpanp5.9.5 CPAN Terminal> s reconfigure Section to configure: [1]: 1 Type of configuration file [1]: 1 Section to configure: [1]: 2 Where can I find your 'sudo' utility? (Enter a single space to disable) [Path to your 'sudo']Section to configure: [1]: 3 Section to configure: [1]: 4 Which email address shall I use? [1]: 3 Email address: myemail@domain.com Section to configure: [1]: 5 Should I be verbose? [y/N]: y Follow prerequisites? [3]: 2 Report test results? [y/N]: y Shall I check module signatures? [Y/n]: n Section to configure: [1]: 6 make flags? UNINST=1 Build.PL and Build flags? uninst=1 Section to configure: 9 CPAN Terminal> quit
If you need to configure cpanp to send test reports through a particular mail relay open up an editor and edit the file: /home/chris/blead/.cpanplus/lib/CPANPLUS/Config/User.pm
Alter the line $conf->set_conf( cpantest_mx => '' ); to specify the dns name or IP address of a suitable relay. Save the file.
Right, back into cpanp and we'll install CPAN::YACSmoke. The current development release of CPAN::YACSmoke won't use our hacked .cpanplus directory so we have to install a hacked version. Also Regexp::Assemble prior to 0.29 fails it's tests on blead, so make sure that you use version 0.29 or greater. ( Thanks to grinder for fixing that.
$ /home/chris/blead/bin/cpanp5.9.5 CPAN Terminal> i http://gumbynet.org.uk/smoke/CPAN-YACSmoke-0.03_07.tar.gz CPAN Terminal> quit
That's it. We're ready to smoke.
$ cd $ mkdir tmp && cd tmp $ minismoker --debug --perl /home/chris/blead/bin/perl5.9.5
And we are smoking!
Nice one. I'll add this to the forthcoming CPAN Testers Wiki if that's okay with you.
I'll be interested to hear of the hack you had to make to get CPAN::YACSmoke working for this.
Re:Excellent Work
BinGOs on 2007-05-14T12:11:03
I backported sub homedir {} from version 0.03_08 and added a few additional bits that I ported over from CPAN::Reporter to show stuff like the %ENV, etc. nothing really heavy.
Re:Excellent Work
BinGOs on 2007-05-14T12:13:50
Sorry, yeah, add this to the wiki.
I'll expand this at some point for setting up a test environment for 5.8.8 perl.
Thank you so much. Your work is certainly appreciated.
Re:Regexp::Assemble now tests correctly on blead
BinGOs on 2007-05-17T17:53:07
Nice one. Now I shall amend the procedure.