Script Release and Version Control

Script Release and Version Control

OSIRIS servers are all linux servers. Script release and version control are done via svn.

  1. Log in as osrsbld@vm-osirisbuild

  2. Go to the desired directory, e.g.,/kroot/src/kss/osiris/scripts/ao

  3. If this is a new script or if you are updating VERNUM, add it to Makefile.

Edit Makefile to add configAOforDomeFlats. A snippet of the Makefile:

SOURCE = ao2real \ ao2sim \ aodelay \ aohatch \ configAOforDomeFlats \ osirisRefocusAO \ rotate \ setdar \ trickDichroic \ wait4ao \ wait4dar \ wait4dm \ wait4fsm \ wait4tt \ wfao OBJECT = DIRS = # Files to make are ... FILES = # Files to release are ... RELFILES = $(SOURCE) # This is a release point. Define version macros to override values inherited # from the environment. override SYSNAM = kss/osiris/scripts/ao/ override VERNUM = 4.0
  1. The general workflow is as follows:

svn status svn add [script] svn commit -m “comment” make -n install (to check what will happen) make install kdeploy -a [directory]

An example to add and release a new script configAOforDomeFlats:

[osrsbld@vm-osirisbuild ao]$ svn status

? configAOforDomeFlats

[osrsbld@vm-osirisbuild ao]$ svn add configAOforDomeFlats

A configAOforDomeFlats

[osrsbld@vm-osirisbuild ao]$ svn status

A configAOforDomeFlats

[osrsbld@vm-osirisbuild ao]$ svn commit -m "syeh updated script to check/move SFP and TRICK dichroic"

Adding configAOforDomeFlats

Transmitting file data .

Committed revision 109367.

[osrsbld@vm-osirisbuild ao]$ make install

---- changing default dir:

cd /kroot/rel/default/Versions/kss/osiris/scripts/ao/; ln -s 4.0 default

---- making install in /usr/local/kroot/src/kss/osiris/scripts/ao

/usr/bin/install -c -m 555 configAOforDomeFlats /kroot/rel/default/Versions/kss/osiris/scripts/ao/4.0/configAOforDomeFlats

cd /kroot/rel/default/bin/

rm -f configAOforDomeFlats

ln -s ..//Versions/kss/osiris/scripts/ao/default/configAOforDomeFlats

[osrsbld@vm-osirisbuild ao]$ pwd

/usr/local/kroot/src/kss/osiris/scripts/ao

[osrsbld@vm-osirisbuild ao]$ kdeploy -a /usr/local/kroot/src/kss/osiris/scripts/ao

Enumerating release components for /usr/local/kroot/src/kss/osiris/scripts/ao...

rel/default/Versions/kss/osiris/scripts/ao/4.0/configAOforDomeFlats

rel/default/bin/configAOforDomeFlats -> ..//Versions/kss/osiris/scripts/ao/default/configAOforDomeFlats

rel/default/Versions/kss/osiris/scripts/ao/4.0/configAOforDomeFlats

rel/default/bin/configAOforDomeFlats -> ..//Versions/kss/osiris/scripts/ao/default/configAOforDomeFlats

rel/default/Versions/kss/osiris/scripts/ao/4.0/configAOforDomeFlats

rel/default/bin/configAOforDomeFlats -> ..//Versions/kss/osiris/scripts/ao/default/configAOforDomeFlats

rel/default/Versions/kss/osiris/scripts/ao/4.0/configAOforDomeFlats

rel/default/bin/configAOforDomeFlats -> ..//Versions/kss/osiris/scripts/ao/default/configAOforDomeFlats

Proceed with deployment (y/n)? y

Executing:

rsync -abvhHS --backup-dir=Old --delete-during --suffix=.2020-08-20-11:57:47 --exclude /Old --exclude /src --exclude /epics --recursive --files-from=/tmp/tmpt_kT3F /kroot/ kuiaha:/kroot/

Executing:

rsync -abvhHS --backup-dir=Old --delete-during --suffix=.2020-08-20-11:57:47 --exclude /Old --exclude /src --exclude /epics --recursive --files-from=/tmp/tmp7b9Zaa /kroot/ napili:/kroot/

Executing:

rsync -abvhHS --backup-dir=Old --delete-during --suffix=.2020-08-20-11:57:47 --exclude /Old --exclude /src --exclude /epics --recursive --files-from=/tmp/tmp5OQ0q8 /kroot/ osiris:/kroot/

Executing:

rsync -abvhHS --backup-dir=Old --delete-during --suffix=.2020-08-20-11:57:47 --exclude /Old --exclude /src --exclude /epics --recursive --files-from=/tmp/tmpPHRJrT /kroot/ puunoa:/kroot/

Output logged to:

/kroot/var/log/kdeploy/vm-osirisbuild