Moving Branch Tags

Why?

The CGIs are built onto hgwbeta every-other Monday night. The QA team tests the new CGIs on hgwbeta. If problems are found, the developer is contacted for a fix to the offending file. It may be necessary to either roll back to a previous version of a file, or to include the developer's new fix in this release of the CGIs. To do either of these, we move the branch tag for the branch release of the CGIs on hgwbeta.

Where?

The two directories that are important are:

- the directory where the build is:
   hgwbeta:/data/tmp/releaseBuild/vXYZ_branch

- the directory where the scripts are:
   hgwbeta:/cluster/bin/build/scripts

How?

  1. Check the developer's change.
  2. Tell the program which file and version you want to change to. hgwbeta:/cluster/bin/build/scripts> vi MoveBranchTagFiles.conf
    Edit this file to include the file name and new version number like so: hg/$CGI/fileName.c 1.234
  3. Run the script to move the branch tag.
  4. Determine which CGIs are affected by this file change: hgwbeta:/usr/local/apache/cgi-bin> dependencies fileName.c
  5. Go to the current build: hgwbeta> cd $BUILDDIR
  6. Determine the current branch number. It will be the most recent directory that looks like "v---_branch". hgwbeta:/data/tmp/releaseBuild> ls -ltr
  7. Do a 'make' in the library directory, if necessary. If the file change was a lib file, then do a make in the corresponding lib directory: hgwbeta:/data/tmp/releaseBuild/vXYZ_branch/kent/src/hg/lib> make
    or
    hgwbeta:/data/tmp/releaseBuild/vXYZ_branch/kent/src/lib> make
  8. Do a 'make alpha' in the CGI directories that are impacted by the change: hgwbeta:/data/tmp/releaseBuild/vXYZ_branch/kent/src/hg/hgTracks> make alpha
  9. Test the change on hgwbeta.

Specific Instructions for Moving Branch Tags for otherOrgs.ra files

The hgGene page uses otherOrgs.ra files to determine which database to use in the "other species" section (labeled "Homologous Genes in Other Species (BLASTP Best Hit)"). OtherOrgs.ra files exist at three levels, like trackDb.ra files. To make a change on hgwdev and propagate it to hgwbeta and the RR:
  1. Change otherOrgs.ra in your CVS sandbox at hgwdev:~/kent/src/hg/hgGene/hgGeneData (usually at the assembly level).
  2. Check in the change.
  3. Make alpha from the tip of the tree at hgwdev:~/kent/src/hg/hgGene to see the change on dev. (Might have to "make clean" and "make libs" first.) Making alpha will put a copy of the otherOrgs.ra file in hgwdev:/usr/local/apache/cgi-bin/hgGeneData.
  4. To see the change on Beta, move the branch tag for the otherOrgs file that got changed, then make alpha from hgGene on beta:
  5. There should now be a new copy of the otherOrgs file at hgwbeta:/usr/local/apache/cgi-bin/hgGeneData.
  6. Push this file to the RR and MGC to change.
WARNING: This change will eventually go out with a new cgi build, even if it's not pushed, so be aware of the timing when moving the pointers to different databases.