Bootstrap Implementation

Product <project> in products/common is an alternate declaration of a product named 'project'.

That project sniffs out the project name,
sets up bootstrap_<project> in the products/project area if it exists,
or <project> if these is no bootstrap project.

This keeps things simple for most projects,
while accommodating mu2e which already has another mu2e product.

Adding a new project

For example, to add nova,

Log into products@if01
  • source /grid/fermiapp/products/common/etc/
  • ups copy project v0.1 -f NULL -G "nova v0.1 -f NULL"
  • cut and paste the command you see on the terminal :
    • ups declare nova v0.1 -f "NULL" -q "" -r "/grid/fermiapp/products/common/prd/project/v0_1/NULL" -z "/grid/fermiapp/products/common/db" -U "ups" -m "project.table"
  • ups declare -c nova v0.1
Log into the account owning /grid/fermiapp/products/nova
  • PROJ=nova
  • cp -r /grid/fermiapp/products/minos/prd/minos prd/${PROJ}
  • mv prd/${PROJ}/v0_1/NULL/ups/minos.table prd/${PROJ}/v0_1/NULL/ups/${PROJ}.table
  • nano prd/${PROJ}/v0_1/NULL/ups/${PROJ}.table
    • Product=${PROJ}
    • and other changes as needed to perform the desired setup actions
  • ups declare ${PROJ} v0.1 -f NULL \
    -r /grid/fermiapp/products/${PROJ}/prd/${PROJ}/v0_1/NULL \
    -m ${PROJ}.table
  • ups declare -c ${PROJ} v0.1