Project

General

Profile

Tag a new argoneutcode release » History » Version 13

Version 12 (Rory Fitzpatrick, 01/18/2019 08:19 AM) → Version 13/14 (Rory Fitzpatrick, 02/15/2019 11:00 AM)

h1. Tag a new argoneutcode release

argoneutcode depends on larsoft and larbatch. Whenever there is a new version of larsoft or larbatch (normally happens weekly), we need to tag a new argoneutcode release to depend on the latest larsoft and larbatch. To find the current dependence on larsoft and larbatch, one can check srcs/argoneutcode/ups/product_deps and examine the following block:
<pre># Add the dependent product and version

product version
larsoft v05_11_01
larbatch v01_21_04
cetbuildtools v4_19_04 - only_for_build
end_product_list
</pre>
To find out the latest larsoft and larbatch versions, do
ups list -aK+ larsoft
ups list -aK+ larbatch
after doing
source /grid/fermiapp/products/argoneut/setup_argoneut.sh

Suppose the latest larsoft is v05_12_00 and the latest larbatch is v01_22_00, we need to tag argoneutcode v05_12_00.
First cd to the local argoneutcode directory:
<pre>cd srcs/argoneutcode</pre>
Make sure you are on develop branch and get all the updates:
<pre>git checkout develop
git pull</pre>
Start a release branch:
<pre>git flow release start v05_12_00</pre>
Modified ups/product_deps:
<pre>parent argoneutcode v05_12_00

larsoft v05_12_00
larbatch v01_22_00</pre>

Sometimes larsoft updates cetbuildtools version and if that's the case you should do this same here.
Commit your changes:
<pre>git commit <pre>commit -a -m'v05_12_00'</pre>
Finish the release:
<pre>git flow release finish -m'v05_12_00'</pre>
and create the new tag and push the changes to origin develop and master:
<pre>git push --tags
git push origin develop master</pre>
The tagging is done. A new tag v05_12_00 has been created and both remote develop and master have been updated to this new tag.

The next step is to start a Jenkins build:
https://buildmaster.fnal.gov/buildmaster/job/argoneut-release-build/
You need to register and get a certificate. Click argoneut-release-build then click rebuild last from the left. Change the version of argoneutcode you want to build (v05_12_00 in this example) and start building. Unpack the tarballs (debug and prof) to /grid/fermiapp/products/argoneut/.

Copy files from Jenkins:
<pre>
wget http://scisoft.fnal.gov/scisoft/bundles/tools/copyFromJenkins
chmod +x copyFromJenkins
copyFromJenkins -q c2 -q e17 argoneut-release-build
</pre>

Finally, upload the built products to scisoft, and install them in the products area.

Copy to scisoft:
<pre>
wget http://scisoft.fnal.gov/scisoft/bundles/tools/copyToSciSoft
chmod +x copyToSciSoft
./copyToSciSoft argoneutcode*bz2
</pre>
Install in the products area:
<pre>
ssh -l argoneut argoneutgpvm01.fnal.gov
tar xf argoneutcode-05.14.00-slf6-x86_64-e9-debug.tar.bz2 -C /grid/fermiapp/products/argoneut/
</pre>

Upload to CVMFS (currently only Tingjun and Corey have permission):
<pre>
ssh -l cvmfsargoneut oasiscfs.fnal.gov
argoneut-sync argoneut/argoneutcode
</pre>