

NOTE: Do not copy and paste the commands below without double checking.
      The commands contain version numbers which are probably not 
      correct for what you are trying to do!
      

1.  Clone and move to the specific branch. For example:

       git clone https://github.com/pegasus-isi/pegasus.git
       cd pegasus
       git checkout N.M

2.  Generate man pages documentation PDFs. This step has a set of 
    dependencies the normal build does not. To mention a few: fop,
    asciidoc, xsltproc, docbook. 

       ant doc

3.  Copy and check the geneated PDFs and man pages in:

       cp dist/pegasus-*/share/doc/pegasus/html/*.pdf doc/
       git commit -a -m "Updated man pages PDFs"

4.  Set the version number in build.properties and commit:

       vim build.properties
       git commit -a -m "Setting version for tag"

5.  Tag. Example:

        git tag -a -m "Created tag for N.M.O" N.M.O

6.  Open branch for new checkins with new version:

       vim build.properties
       git commit -a -m "Branch reopen for checkins"

7.  Bring the branch back to master, but ignore the commits.

       git checkout master
       git merge --no-commit N.M
       git commit -m "Merged 4.2"

8.  Build using the NMI system.

9.  Copy the build binaries from nightlies to their final place.

10. Build APT repo. First copy the debs into their final place in 
    the apt tree. Then run update-pegasus-apt-repo on a Debian
    machine. Note that Mats' Debian key is used to sign the
    repository, so currently he has to do this step.

11. Built Yum repo. Similar to Apt repo, but the step has to be
    done on a RHEL machine.

12. Create and deploy the tutorial VMs.

13. Update download page (and test the links!)

14. Send annouce email to pegasus-announce@mailman.isi.edu
    (Karan has to do this step)


