3.4.3. Building SIMP From Source

3.4.3.1. Getting Started

Please have your environment prepared as specified by Environment Preparation before continuing.

Download the CentOS/RedHat installation media:

3.4.3.2. Generating The ISO!

Change into the simp-core directory.

$ cd simp-core

Check out your desired branch of SIMP:

  • To check out a stable SIMP release, check out a tag (Recommended):
$ git checkout tags/6.0.0-0
  • To check out an unstable SIMP release, check out the latest master:
$ git checkout master

Run bundle to make sure that all of the build tools and dependencies are installed and up to date:

$ bundle install

Make sure all of the source materials that were downloaded above are in your current working directory.

Run the build:auto rake task to create a bootable ISO using the following template:

$ bundle exec rake build:auto[<Directory containing install media>,<SIMP version>]

For example:

$ # for SIMP 6
$ bundle exec rake build:auto[/path/to/ISOs,6.X]

$ # for SIMP 5 and CentOS 7
$ bundle exec rake build:auto[/path/to/ISOs,5.1.X]

$ # for SIMP 4 and CentOS 6
$ bundle exec rake build:auto[/path/to/ISOs,4.2.X]

Once the process completes, you should have a bootable SIMP ISO ready for installation!

3.4.3.3. After You Build

If you’ve built from source, you will probably have noticed that a development GPG key has been generated for this build.

This key is only valid for one week from generation and has been specifically generated for your ISO build.

Doing this allows you to have a validly signed set of RPMs while reducing the risk that you will have invalid RPMs distributed around your infrastructure.

Note

If you need to build and sign your RPMs with your own key, you can certainly do so using the rpm --resign command.

The new development key will be placed at the root of your ISO and will be called RPM-GPG-KEY-SIMP_dev. This key can be added to your clients, or served via a web server, if you need to install from a centralized yum repository.

Please see the Red Hat Guide to Configuring YUM and YUM Repositories for additional information.