Setup drunc with DUNE DAQ - DUNE-DAQ/drunc GitHub Wiki
You need to set up dunedaq with a relatively new nightly (post v4.1.0), it is recommended to use the official instructions or loosely follow the guide below.
This is only intended as a skeleton, for full guidance refer to this guide.
source /cvmfs/dunedaq.opensciencegrid.org/setup_dunedaq.sh # sets up dunedaq env var paths
setup_dbt latest # sets up the latest version of dunedaq buildtools
dbt-create -c <opts> <version_name> <work_dir_name> # creates the work dir
cd <work_dir_name> # enter the work dir
. env.sh # updates the PATH type env vars, sets up build environment,
cd sourcecode # enter the sourcecode dir
git clone # any DUNE-DAQ package needed # installs any required packages
cd .. # return to the work_dir root
dbt-build # builds any local packages included in CMake
dbt-workarea-env # sets up the PATH type env varsThe output of this looks approximately like Sample-outputs.
Note - Installing the nightly will install the latest version (develop) of drunc as of midnight of the day previous to the specified version. Installing with a fddaq release will include a packaged version.
A couple of reasons for doing this:
- You want the latest and greatest
drunc, - You want to modify
drunc.
You will need to (starting from the working directory root)
cd sourcecode # enter the sourcecode dir
git clone [email protected]:DUNE-DAQ/druncschema.git -b develop # clone the develop branch of druncschema
cd druncschema # enter the drunschema directory
pip install . # install druncschema in the venv
cd .. # return back to the sourcecode directory
git clone [email protected]:DUNE-DAQ/drunc.git -b develop # clone the develop branch of drunc
cd drunc # enter the drunc directory
pip install . # install drunc in the venvNote - if you want to continuously get the latest versions of drunc instead of just getting it once, you need to amend the pip install . lines to
pip install -e .This way you will not need to keep running pip uninstall and reinstalling every time you git pull. Both drunc and druncschema are needed in the model as druncschema is a dependency of drunc, and druncschema defines the gRPC inter-process messaging structure.
Reasons for doing this:
- You are not at EHN1.
You need to set up a kafka instance and do modifications to the configurations using a dockerized version. This is uses the pocket repository sample.
Head to the running instructions to start drunc.