[freeside-users] Installing CPAN modules using a local Bundle
Richard Siddall
richard.siddall at elirion.net
Wed Sep 21 13:51:15 PDT 2005
This is just a quick description of a technique I've used a couple of
times to simplify the installation of Freeside.
Bundles are essentially Perl modules which contain a list of other Perl
modules instead of code. When CPAN is told to install a Bundle, it
installs all the modules referenced in the bundle.
It turns out that you can use a local bundle instead of one on CPAN. I
believe this is a feature of the CPAN module to allow you to restore
or replicate Perl installations using autobundle files.
Step by step:
1/ Write your bundle file. (There's a sample bundle file for the
billing server part of the Freeside system attached to this e-mail; I
think it's for 1.4.1.)
2/ Make sure CPAN has been run at least once by the user that will be
doing the installation (root). (On older Perls it can be a good idea to
update the CPAN module, so cpan doesn't try to upgrade Perl.)
3/ Copy your bundle file to the Bundle subdirectory of the user's CPAN
directory (/root/.cpan/Bundle for example).
4/ Start CPAN and install the bundle:
cpan
install Bundle::Freeside-Server
5/ Watch the output and make sure there are no fatal errors. (I think
on one system I re-ran the installation several times and ultimately
everything installed.)
This doesn't really save you much. With the same amount of work you
could write a shell script that makes cpan install the same set of
modules. However, it is useful for creating a bunch of RPMs of Perl
modules using Ovid, as you can do:
ovid Bundle::Freeside-Server
Regards,
Richard.
-------------- next part --------------
package Bundle::Freeside::Server;
$VERSION = '0.01';
1;
__END__
=head1 NAME
Bundle::Freeside::Server - Required Perl modules for the core Freeside Billing Server installation
=head1 SYNOPSIS
perl -MCPAN -e 'install Bundle::Freeside::Server'
=head1 CONTENTS
MIME::Base64
Digest::MD5
Net::FTP - for libnet
Locale::Constants - for Locale-Codes
Net::Whois
Business::CreditCard
Mail::Header - for MailTools
Date::Format - for TimeDate
File::CounterFile
FreezeThaw
String::Approx
Text::Template
DBIx::DataSource
DBIx::DBSchema
Net::SSH
String::ShellQuote
Net::SCP
Tie::IxHash
Time::Duration
HTML::Widgets::SelectLayers
Storable
Apache::DBI
=head1 CONFIGURATION
=head1 AUTHOR
Richard Siddall
More information about the freeside-users
mailing list