Modify DAQInterface so it can work as a ups product
Currently, DAQInterface is designed so that files within its repo are expected to be modified to configure its environment - e.g., the .settings file exists at the root of the DAQInterface directory structure. As DAQInterface matures, though, it would be preferable for it to be used as a frozen, versioned ups product - and for this to happen, the expectation that files within the repo be modified for configuration purposes needs to be eliminated. Additionally, it should be possible to toggle between artdaq-database and local filesystem FHiCL configurations without needing to modify the daqinterface.py file. In general, we don't want to have to modify files within the DAQInterface repo unless we're actually performing a modification we wish to commit to the central repo.
#1 Updated by John Freeman over 2 years ago
- Status changed from New to Resolved
- % Done changed from 0 to 100
With commit d764444056d1c343adfe88ab91700aac23e3dfc6 on DAQInterface's develop branch, it's now possible to control DAQInterface completely without (necessarily) needing to modify any of the files in its repo. The basic idea is that, before sourcing DAQInterface's source_me script, you tell DAQInterface the location of a user-defined sourceable script which in turn contains info on where the settings file and boardreader list are, as well as whether you want to use artdaq-database or the local filesystem for the location of FHiCL configuration documents. Details on how to run the new DAQInterface can be found at https://cdcvs.fnal.gov/redmine/projects/artdaq-utilities/wiki/Artdaq-daqinterface, although note that since a new ups release of DAQInterface isn't yet available, these instructions describe how to set up assuming you've just git clone'd the repo. However, I've tested DAQInterface using a mock ups setup script, which looks like the following:
# JCF, Sep-6-2017 # This script, when sourced, is meant to simulate how the environment would change after DAQInterface was set up as a ups product export DAQINTERFACE_VERSION=1.0 export DAQINTERFACE_DIR=/nfs/sw/work_dirs/DAQInterface_tests/DAQInterface_installation export PATH=$DAQINTERFACE_DIR/bin:$PATH
..in which I've run DAQInterface in a completely separate directory from the one in which it was installed, without touching any of the files in actual DAQInterface installation.