Building and installing ORCA 5.X RPMs

Here’s the procedure for doing a build, installing it, and restarting ORCA.

1) Have a up-to-date version of the aydan-recovery tree (or another 5.X branch) checked out.

2) In the “redhat” subdirectory, edit the following file: orca-iaas.spec

3) At the bottom of the file, there is a section marked “%changelog”. Add a new message here, according to the format you find there. For example, if the file has this content:

%changelog
*Mon Aug 04 2014 Victor J. Orlikowski <vjo@cs.duke.edu>
- Trigger build for UNC rack testing

*Wed Mar 05 2014 Victor J. Orlikowski <vjo@cs.duke.edu>
- Build failure notifications work; do a clean build.

You should do something like:

%changelog
*Wed Aug 06 2014 Victor J. Orlikowski <vjo@cs.duke.edu>
- Trigger build for UNC rack testing, try 2

*Mon Aug 04 2014 Victor J. Orlikowski <vjo@cs.duke.edu>
- Trigger build for UNC rack testing

*Wed Mar 05 2014 Victor J. Orlikowski <vjo@cs.duke.edu>
- Build failure notifications work; do a clean build.

4) Save the file, and commit it to subversion.

5) Your commit against this file will trigger Hudson to build RPM packages for CentOS 5 and 6. This is implemented via a postcommit hook in subversion.

6) Once the RPMs have been successfully built, they will be copied to a yum repository, and a message will be sent to the exogeni-ops and geni-orca lists to notify everyone of completion of the build.

Build failures are *also* reported; you should *not* see a build failure out of the RPM build projects, if the regression build for aydan-recovery is not failing.

7) Once you have been notified of a successful RPM build, you should log into the UNC head node as root, via ssh.

8) Run the following command to update the local yum repo mirror:

yum_sync

9) When yum_sync completes, run:

yum -y upgrade orca-iaas*

10) When the yum upgrade completes, you can start/stop/restart/clean-restart any of the actors. To start/stop/restart/clean-restart an actor or the controller, use its init.d script.

For example, to restart (not clean-restart) the AM and broker actors (since they share a container), run:

/etc/init.d/orca_am+broker-12080 restart

To clean-restart the SM actor, run:

/etc/init.d/orca_sm-14080 clean-restart

To stop the controller, run:

/etc/init.d/orca_controller-11080 stop

If you don’t know what options a given init.d script supports, run it without arguments to get a summary. For example:

[root@unc-hn config]# /etc/init.d/orca_am+broker-12080 
Usage: /etc/init.d/orca_am+broker-12080 {start|stop|restart|clean-restart|condrestart|try-restart|reload|force-reload}

As is usual with all other ExoGENI racks, all configuration files/structures can be found under: /etc/orca