Admin guide » History » Version 5
Herbert Greenlee, 01/05/2015 02:47 PM
h1. The experiment environment setup script
Every experiment has a script for initializing its standard software environment. This script may do any or all of the following things.
* Initialize ups products system and products areas.
* Set up some basic ups products.
* Set environment variables.
This section the recommended way of writing this script.
h2. Initializing ups
After initializing ups, the following should be the case:
* The executable @ups@ should be on the execution path.
* Command or alias @setup@ should be defined.
* The products path (environment variable @PRODUCTS@) should be defined as a colon-separated list of ups products areas.
With respect to the last point, the products path may include the following ups products areas (in order).
* Experiment-specific products (e.g. @/grid/fermiapp/products/uboone@).
* Larsoft products (for larsoft experiments, e.g. @/grid/fermiapp/products/larsoft@).
* Fermilab common products (e.g. @/grid/fermiapp/products/common/db@).
Generally, ups is initialized by sourcing a script called "@setups@" (or "@setups.sh@" or "@setups.csh@", the name can vary) from some standard place. It is acceptable to source multiple "@setups@" scripts from multiple products areas, as well as extending the products path to include additional products areas manually.
For larsoft experiments on nodes where the @/grid/fermiapp@ filesystem is mounted, the main @setups@ file path is @/grid/fermiapp/products/larsoft/setups@.
h1. Experiment-specific hooks