Developing Using a Stable Baseline

From Daya Bay

Revision as of 13:41, 6 May 2011 by Coyote (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Each last successful 'daily' build is a considered 'stable' in so far as it has compiled and pasted a series of nose test successfully. You can find the set of recent 'daily' builds at:

   http://dayabay.ihep.ac.cn/tracs/dybsvn/daily/dybinst

The revision number of these build are an ideal baseline from which to develop you code.

Installing a Stable Baseline

To begin development you need your own instance of a 'daily' build. The easiest way to do this is to note the latest revision number of the 'daily' builds on the web page above and then use it along with dybinst to create you own installation. (Here, '11868' is the revision number for the daily build on 3rd May 2011.)

cd ${NUWA_HOME}
svn export http://dayabay.ihep.ac.cn/svn/dybsvn/installation/trunk/dybinst/dybinst
nohup ./dybinst -z 11868 trunk all > all.log 2>&1 < /dev/null &


To avoid any issue when it comes to committing your changes, you want to make sure that the package or packages you will be working on are up to date. In the example below the DybPython package is the one being developed.

cd NuWa-trunk/dybgaudi/DybPython
svn update -r HEAD


Setting up your development environment

You can now set up you own development environment. (It is recommended you do this is a clean terminal session to avoid clashing with other environments.)

cd ${NUWA_HOME}/NuWa-trunk/dybgaudi/DybPython
svn update -r HEAD
   (do your development here)
cd cmt
make
   (run your tests here)
svn ci -m "Improved diagnositics for Catalog" ..


Continuing development

Once you have completed you development you would normally want to move up to the next 'daily' that contains it to continue any further development. You can do this by updating to the most recent 'daily' revision. (Here, '11949' is the revision number for the daily build on 6th May 2011.)

./dybinst -z 11949 -u -r trunk projects dybgaudi


(-r does a full rebuild, you can also consider using -c or -s, see dybinst help for details).

Personal tools