SVTVME pacakge maintenance


basic rules:


how to make changes in CVS repository

  1. get a kerberos ticket and log on b0*****
  2. create a work directory: e.g. mkdir ~/work
  3. setup cvs -q online
  4. cd ~/work
  5. cvs checkout svtvme
  6. cd svtvme
  7. look at setup_local scriprt in this directory, it has the command:
    setup svtvme -r ${PWD} -M ups -m svtvme.table
    you must execute this command so the svtvme logicals point to this new work area, rather then to the real package directory on the online code disk. Then:
  8. gmake
  9. gmake ppc
  10. cd src
  11. edit/change/test/.... source code
  12. similarly on header files in /include etc.
  13. when done: cvs commit -m"comment" file_name for each file you changed, or commit -m"comment" with no file name if same comment applies to all changed files

how to make changes in development version of the package
(development version is just the head of the repository)


how to test the development version

The crates load the "current" version of SVTVME and "current" version of SVTSPYMON.
In order to test the development version we have to set it as current, recompile SVTSPYMON and reload everything on the crates.
  1. update the development version as above
  2. log in b0desktop02 as cdfprod
  3. make a symbolic link called "current" pointing to it
  4. recompile the current version of SVTSPYMON with
  5. reboot all the involved crates (TO BE USED WITH CARE: ~annovi/useful/rebootSVT.sh)
  6. test it as necessary
  7. if NOT satisfied with it
  8. if satisfied with it

How to make a new frozen version of the package (or new release),
for example v5_18, i.e. something users will access with: setup svtvme v5_18

  1. test first as development as above
  2. when happy put release comments in README file
  3. when happy with head of repository status tag it in cvs from your individual account with
  4. log in b0desktop02 as cdfprod
  5. setup cvs -q online
  6. setup svtvme -d (or any other version)
  7. cd $SVTVME_DIR/..
  8. cvs checkout -r v5_18 -d v5_18 svtvme
  9. cd v5_18
  10. now must declare this to ups so setup can work:
    1. ups declare -f NULL -r ${PWD} -M ups -m svtvme.table -z /cdf/onln/code/cdfprod/upsdb svtvme v5_18
    2. ups declare -f NULL -q ppc -r ${PWD} -M ups -m svtvme.table -z /cdf/onln/code/cdfprod/upsdb svtvme v5_18
  11. setup svtvme v5_18
  12. gmake
  13. gmake ppc

how to load a new SVTVME relase on the crates

The crates load the "current" version of SVTVME and "current" version of SVTSPYMON.
Whenever changing the "current" version of SVTVME, SVTSPYMON must be recompiled.
  1. make a new release following instruction above
  2. make a symbolic link called "current" to the release e. g.
  3. recompile the current version of SVTSPYMON with
  4. reboot all the involved crates (TO BE USED WITH CARE: ~annovi/useful/rebootSVT.sh)
  5. MAKE AN ENTRY IN THE SVT ELOG!

Stefano Belforte
Modified by Alberto Annovi: Nov 8 2006