Project

General

Profile

Updating the UPS Product » History » Version 13

Version 12 (Serdar Kurbanov, 09/02/2015 03:14 PM) → Version 13/26 (Serdar Kurbanov, 09/02/2015 03:26 PM)

h1. Updating the UPS Product

This page describes how to build a new version of the novaddt UPS product together with the packages that it depends on and how to roll these new products out on the detectors.

h2. Building the Products

Here's how to build NOvA DDT products

0. Go to /nova/app/users/<user> without executing setup_nova
> cd /nova/app/users/<user>

1. Make changes and commit it to trunk
<pre>
<changes changes changes...>
svn commit <some_file.cc>
</pre>

2. Checkout NOvA DDT release:
<pre>
svn co svn+ssh://p-novaddt@cdcvs.fnal.gov/cvs/projects/novaddt/novaddt.svn/trunk novaddt
</pre>

3. Renaming version in trunk:
<pre>
cd <your build dir>/novaddt/ups
chmod +x ups_product_tag.sh
./ups_product_tag.sh <new version> (example: ./ups_product_tag.sh v03_04_06)
</pre>

4. Build mrb
<pre>
> mkdir <builddir>
> cd <builddir>
> . /grid/fermiapp/products/nova/externals/setup
> setup mrb
> export MRB_PROJECT=nova
> mrb newDev -v <new version> -q e6:on:prof (example: mrb newDev -v v03_04_06 -q e6:on:prof)
> source localProducts_nova_<new version>_e6_on_prof/setup (example: source localProducts_nova_v03_04_06_e6_on_prof/setup)
> cd srcs
> svn co svn+ssh://p-novaddt@cdcvs.fnal.gov/cvs/projects/novaddt/novaddt.svn/tags/<new version> novaddt (example: svn co svn+ssh://p-novaddt@cdcvs.fnal.gov/cvs/projects/novaddt/novaddt.svn/tags/v03_04_06 novaddt)
>> [
>> if there's a problem with some dependencies, say *novaddtdeps*, you'll need to do ... and then go back to *mrbsetenv* step
>> useful commands:
>> ups list -aK+ <package name> (example: ups list -aK+ <novaddtdeps>) - to list versions of that package available
>>
>> ]
> cd $MRB_BUILD
> mrbsetenv
> mrb i -j8 --tee
</pre>


5. Test if new version works as intended
<pre>
cd <your build dir>
. /grid/fermiapp/products/nova/externals/setup
export PRODUCTS=<your build dir>/localProducts_nova_<new version>_e6_on_prof/:$PRODUCTS
cd ddt_release_02.09.2015/product/
setup novaddt <new version> -q e6:on:prof (example: setup novaddt v03_04_06 -q e6:on:prof)
>> uncomment DDTGlobalConfiguration-FD.fcl after "# if using nova binary:"
nova -c srcs/novaddt/DDTGlobalConfigurations/DDTGlobalConfiguration-FD.fcl
</pre>

h2. Deploying the Products

Install build to FD.

1. Get permissions to access *novadaq@novadaq-far-master* (if necessary, ask Martin). Ssh to FD server
ssh novadaq@novadaq-far-master

2. Copy new build ot FD server (from gpvm node, from your build directory)
rsync -avP localProducts_nova_v03_04_06_e6_on_prof/novaddt novadaq@novadaq-far-master:/ddt/externals/.

3. Check that code works
. /ddt/externals/setup
setup novaddt v03_04_06 -q e6:on:prof



3. Start changes in control room
> (Make track of what you'r doing n ECL)
> Stop run
> DAQ config editor on Monitor1
> Config is FarDetGlobalConfigP1
> Change build version manually
> Enter
> Start new run