Installing the build system

03 Feb 2008

This article is a HowTo on installing an RPM build server appliance as a virtual system.

Status: This article and kickstart configuration are still being tested.

Requirements

  • Access to Fedora 8

    The simplest way is to download the Fedora 8 DVD for the core set of packages and then use HTTP for access to the Everything, updates, and development repositories.

    You can also install directly from the net.

    For a kickstart installation you will need either the full DVD above or at least the /images/boot.iso.

  • A dedicated system — virtually

    A virtual machine is best but a blank box will work too. VMware Player was used to test this version.

Kickstart Installation

  1. Copy the kickstart file to a location on your network where the kickstarting host will be able to access it. This could be through NFS, FTP, or HTTP.

    http://bitsko.slc.ut.us/2008/02/03/bldsys.cfg

  2. Edit the kickstart file and replace the @VARIABLES@ with values appropriate for your environment.

    Tip: If you use a web server to make your kickstart file available you can use a CGI script to dynamically search and replace variables.

  3. Boot the system using the install media or boot.iso.

  4. At the bootloader menu, hit the Tab to customize the boot options.

  5. Append the ks= boot option and the URL to the kickstart file:

    ks=http://myserver/bldsys.cfg
    ks=nfs://myserver/export/bldsys.cfg
    ks=ftp://myserver/pub/bldsys.cfg

Kickstart Troubleshooting

There are many things that can go wrong during a kickstart. Most of them are obvious as soon as you look at them but all of them require you to re-kickstart until you get it right. There is no simpler way [yet].

The build system kickstart has two phases in its %post section: The early-kickstart runs after the packages are installed and is very short. The early-kickstart installs the late-kickstart script where most of the work is done. The late-kickstart updates the system and then configures and starts all the services.

While the kickstart script is running it logs its progress in the /etc/motd file so anyone logging-in will see that the system is still kickstarting or has failed. After a successful kickstart the log will be replaced with the kickstart name and date.

In addition to /etc/motd, the build system kickstart creates two log files in /root, early-kickstart.log and late-kickstart.log. You should be able to see and troubleshoot any errors by reading these logs.

If there is no late-kickstart.log then the kickstart failed during the early kickstart.