How to build a frozen release

From WormBaseWiki
Revision as of 16:04, 24 September 2007 by Tharris (talk | contribs) (New page: = Launch the base virtual machine = I've created base virtual machines for Fedora Core 4 and Fedora Core 5 that are pre-configured for a WormBase installation. This includes: * suitable ...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Launch the base virtual machine

I've created base virtual machines for Fedora Core 4 and Fedora Core 5 that are pre-configured for a WormBase installation. This includes:

  • suitable user accounts and directories
  • MySQL
  • AceDB
  • support files such as Wu-BLAST

Note that some of these components may need to be upgraded for new freezes.

Create directories

For frozen releases, the entirety of the site will be built in a single self-containted directory. We will create this in /usr/local for easy portability (creating this in a home directory creates problems since that user will need to exist for any virtual machines). The following examples assume that the build system already has appropriate users and groups.

todd> mkdir /usr/local/ws[XXX].wormbase.org
todd> chgrp wormbase ws[xxx].wormbase.org
todd> chmod 2775 ws[xxx].wormbase.org

The acedb directory:

todd> cd /usr/local/ws[XXX].wormbase.org
todd> mkdir acedb
todd> chown acedb:acedb
todd> chmod 2775 acedb

The extlib and subdirectories for our own libraries and binaries

todd> mkdir extlib src  build; cd extlib
todd> mkdir lib bin include man

Install Acedb

See the documentation under How to build a WormBase Mirror, adjusting paths and names as appropriate for the directory created above.

Build and install a local copy of Perl

This is probably redundant but I want to create a completely self-contained version of the site. Later, this can be handled by the virtual machine. Fetch the current stable source:

todd> cd /usr/local/ws[XXX].wormbase.org/src
todd> wget http://www.perl.com/CPAN/src/stable.tar.gz
todd> cd ../build ; tar xzf ../src/stable.tar.gz
todd> cd perl-5.8.8
todd> rm -f config.sh Policy.sh
todd> sh Configure

You can have Perl look in other directories for extensions and modules in addition to those already specified. We will manually specify @INC at server startup. When asked "Directories to use for library searches? [/usr/local/lib /lib /usr/lib]" enter

none

When asked: "Installation prefix to use? (~name ok) [/usr/local] " enter

/usr/local/ws[XXX].wormbase.org/extlib

Continue the rest of the configuration as usual.

todd> make
todd> make test
todd> make install

Configure CPAN

Configure CPAN

The first time you launch CPAN, you will be prompted to configure it. Specially, we need to configure CPAN to install modules in our special WormBase directory.

$ perl -MCPAN -e shell (note: we do NOT need to be a privileged user) cpan> o conf init (only necessary if not prompted)

For the Makefile.PL arguments, enter

PREFIX=/usr/local/wormbase/extlib INSTALLMAN1DIR=/usr/local/wormbase/extlib/man/man1 INSTALLMAN3DIR=/usr/local/wormbase/extlib/man/man3

TH - Note to self: It might be cleaner to just flatten this whole structure into a single directory using something like...


PREFIX=/usr/local/wormbase/extlib \
INSTALLPRIVLIB=...
INSTALLSCRIPT=...
INSTALLSITELIB=...
INSTALLBIN=...
INSTALLMAN1DIR=...
INSTALLMAN3DIR=...


todd> sudo perl -MCPAN -e shell


Configure CPAN to install modules in the local directory