CCL | Software | Download | Manuals | Forum | Papers
CCL Home

Research

Software Community Operations

Deploy CCTools

The deployment of CCTools publishes a new version of CCTools in the CCL download page and installs the new version in Notre Dame's AFS space (/afs/nd.edu/user37/ccl/software/cctools/`sys`). It will create a precompiled package for the architecture that it has been deployed on. Also, the current src download link would be updated. To successfully deploy CCTools on all the platforms that we support, please read through the whole document.

The following example shows how to create and deploy a release version with version number "X.Y.Z". X, Y, and Z each represents a single digit. An example of a valid verion number is: 3.3.2.

Create a new release

To create a new release version from the latest CCTools source code, use git branch to create a release branch of master:

git branch release-X.Y.Z

Then, check out the newly created release branch:

git checkout release-X.Y.Z

Now modify the configure file, setting the various release variables:

major=X
minor=Y
micro=Z
release_date="MONTH/DAY/YEAR"

Then commit the changes:

git add configure
git commit -m "Bumped up version number to X.Y.Z"

Deploy the new release

We have already created a release verion whose verion number is X.Y.Z in our git repository. Now we can start to deploy it. Eventually we will need to deploy it on various platforms. This example shows how to deploy CCTools on the Red Hat Enterprise Linux 5, X86 64 bit platform. First, ssh to a machine whose platform is Red Hat Enterprise Linux 5, X86 64 bit. Then enter the AFS directory that has the CCTools deployment tool -- cctools_deploy. Finally, execute the cctools_deploy script with the version number as the argument.
ssh cclweb00.cse.nd.edu
cd ~ccl/software/scripts/
./cctools_deploy X.Y.Z

Update the download page

If the deployment script terminates successfully, the precompiled package named "cctools-X.Y.Z-x86_64-redhat5.tar.gz" should appear in the /afs/nd.edu/user37/ccl/www/software/files/ directory. The remaining step is to update the download page so that the corresponding download link points to the newly created .tar.gz file. The source file of the download page is located at /afs/nd.edu/user37/ccl/www/software/download.shtml .

Now, we have successfully deployed a new release verion of CCTools for the Red Hat Enterprise Linux 5, x86 CPU (64 bit) platform.

Deployment on other platforms

It is very important that Red Hat Enterprise Linux 5, x86_64 be deployed last. It is forward compatible with version 6 but version 6 is not backwards compatible with version 5. The binaries produced by building version 5 will replace the ones deployed when building version 6. Once you have deployed a new version on one platform, to deploy the same version on other platforms you only need to repeat the process in section "Deploy the new release" and "Update the download page" for each of the platforms. Before you run the cctools_deploy script, you will have to ssh to the machine that is correspondent to the target platform (instead of ssh to cclweb00.cse.nd.edu in the above example). The following table lists which machine has which platform.

cclweb00.cse.nd.edu Red Hat Enterprise Linux 5, x86 CPU (64 bit)
ccl00.cse.nd.edu Red Hat Enterprise Linux 5, x86 CPU (32 bit)
cclmac00.cse.nd.edu MacOS 10.4 "Tiger", x86 CPU -- See notes below.
wizard.cse.nd.edu Solaris 10, SPARC -- See notes below.

Important tips on deploying CCTools on various platforms

On the Mac machine, which is cclmac00.cse.nd.edu, you don't get AFS credentials by default. So you should do kinit and aklog before executing the cctools_deploy script. The reason why we have to do this is that the cctools_deploy depends on some libraries and utilities in the CCL AFS space.

On the Solaris machine, which is wizard.cse.nd.edu, the default Make utility is not GNU make. To successfully run cctools_deploy on that machine, you will have to first add GNU Make to your path like this:

setenv PATH ~ccl/software/external/gnu/bin:$PATH

You also need to add GNU gcc to your PATH as well as the location of libstdc++ to your LD_LIBRARY_PATH.

setenv PATH /opt/gcc/bin:$PATH
setenv LD_LIBRARY_PATH /opt/gcc/lib

Deploy CCTools on Windows

Windows 7/Vista/XP, x86 CPU (Command Line)

Under construction.