FAQ:How to add and configure a new MDC subdirectory?

From Daya Bay
Jump to navigation Jump to search
Offline Documentation: [Offline Category] [FAQ] [Howto] [Reference] [Manual]

Offline Documentation
This article is part
of the Offline Documentation
Other pages...

Offline Category
How Tos
Getting Started
Software Installation

See also...

General Help on this Wiki

Create MDC10b, starting from MDC10a as an example. See revisions 8353 to 8363 here.

  • Create dybgaudi/Production/MDC10b
$ mkdir MDC10b
$ cd MDC10b
$ mkdir cmt
$ mkdir python
$ mkdir src
$ cd cmt
$ cp  ../../MDC10a/cmt/requirements  .
$ cp  ../../MDC10a/cmt/version.cmt  .
$ cd ../python/
$ mkdir MDC10b
$ cd MDC10b
$ mkdir runLED_Muon
$ cd runLED_Muon/
$ cp  ~/dayabay/offline/NuWa-trunk/people/djaffe/MDC10b/FullChain.py .
$ cp  ~/dayabay/offline/NuWa-trunk/people/djaffe/MDC10b/LED.py .
$ cp  ~/dayabay/offline/NuWa-trunk/people/djaffe/MDC10b/Muon.py .
$ cp  ~/dayabay/offline/NuWa-trunk/people/djaffe/MDC10b/chkLED.py .
$ cp  ~/dayabay/offline/NuWa-trunk/people/djaffe/MDC10b/__init__.py .
$ emacs __init__.py &
$ cd ../../../src/
$ cp ../../MDC10a/src/MDC10a_entries.cc MDC10b_entries.cc
$ cp ../../MDC10a/src/MDC10a_load.cc MDC10b_load.cc
  • Edit .cc files to use MDC10b
  • Edit dybgaudi/Production/ProductionRelease/cmt/requirements to build MDC10b by default.
  • Add to svn. (Note: If you svn add and svn ci before building, then you don't have to avoid adding all the files created by the build. If the build fails because you forgot something or made a mistake, then you just correct it and build again. Ignore this technique if you are an expert with svn or simply like to add and ci each directory and file individually.)
$ svn add MDC10b
A         MDC10b
A         MDC10b/cmt
A         MDC10b/cmt/version.cmt
A         MDC10b/cmt/requirements
A         MDC10b/python
A         MDC10b/python/MDC10b
A         MDC10b/python/MDC10b/runLED_Muon
A         MDC10b/python/MDC10b/runLED_Muon/FullChain.py
A         MDC10b/python/MDC10b/runLED_Muon/LED.py
A         MDC10b/python/MDC10b/runLED_Muon/Muon.py
A         MDC10b/python/MDC10b/runLED_Muon/chkLED.py
A         MDC10b/python/MDC10b/runLED_Muon/__init__.py
A         MDC10b/src
A         MDC10b/src/MDC10b_entries.cc
A         MDC10b/src/MDC10b_load.cc
A         MDC10b/scripts
$ svn ci MDC10b -m "MDC10b is here. Scripts have been updated for dry-run. LED double-pulsing available."
Adding         MDC10b
Adding         MDC10b/cmt
Adding         MDC10b/cmt/requirements
Adding         MDC10b/cmt/version.cmt
Adding         MDC10b/python
Adding         MDC10b/python/MDC10b
Adding         MDC10b/python/MDC10b/runLED_Muon
Adding         MDC10b/python/MDC10b/runLED_Muon/FullChain.py
Adding         MDC10b/python/MDC10b/runLED_Muon/LED.py
Adding         MDC10b/python/MDC10b/runLED_Muon/Muon.py
Adding         MDC10b/python/MDC10b/runLED_Muon/__init__.py
Adding         MDC10b/python/MDC10b/runLED_Muon/chkLED.py
Adding         MDC10b/scripts
Adding         MDC10b/src
Adding         MDC10b/src/MDC10b_entries.cc
Adding         MDC10b/src/MDC10b_load.cc
Transmitting file data .........
Committed revision 8783.
$ cd ProductionRelease/cmt/
$ svn ci requirements -m "add MDC10b"
  • Build. In Production/MDC10b/cmt, (nuwaenv only needed if environment not yet set up)
$ nuwaenv -r trunk -O
$ cmt config
Creating setup scripts.
Creating cleanup scripts.
$ source setup.sh
$ make
  • Run some test jobs.
Offline Software Documentation: [Offline Categories] [FAQ] [Offline Faq Category]