Skip to content

Added support in integrationtest_drunc.py for finding a predefined configuration file...#159

Merged
bieryAtFnal merged 2 commits into
developfrom
kbiery/added_support_dbpath
Jun 12, 2026
Merged

Added support in integrationtest_drunc.py for finding a predefined configuration file...#159
bieryAtFnal merged 2 commits into
developfrom
kbiery/added_support_dbpath

Conversation

@bieryAtFnal

Copy link
Copy Markdown
Contributor

... in one of the paths listed in the DUNEDAQ_DB_PATH env var.

Description

While helping Pawel debug an issue with a new drunc integration test, I noticed that the cross-check that the integrationtest infrastructure does to verify that a file with a pre-defined DUNE-DAQ configuration exists was not taking into account the DUNEDAQ_DB_PATH. This seemed overly restrictive, so I added this functionality.

With this change, we don't need to specify pre-defined config files in our integetests with code like the following:

common_config_obj.predefined_config_db = (
    os.environ.get("DAQSYSTEMTEST_SHARE") + "/config/daqsystemtest/example-configs.data.xml"
)

and instead can use simpler assignments like the following:

common_config_obj.predefined_config_db = (
    "config/daqsystemtest/example-configs.data.xml"
)

Here are suggested steps for testing this change. They locally modify an existing integtest to use the simpler pre-defined config file assignment and show that the test fails without the code change in this PR, and succeeds when the code in this PR is used.

DATE_PREFIX=`date '+%d%b'`
TIME_SUFFIX=`date '+%H%M'`

source /cvmfs/dunedaq.opensciencegrid.org/setup_dunedaq.sh
setup_dbt latest
dbt-create -n NFD_DEV_260610_A9 ${DATE_PREFIX}FDDevTest_${TIME_SUFFIX}
cd ${DATE_PREFIX}FDDevTest_${TIME_SUFFIX}/sourcecode

git clone https://github.com/DUNE-DAQ/daqsystemtest.git -b develop
git clone https://github.com/DUNE-DAQ/crtmodules.git -b develop
cd ..

sed -i 's,os.environ.get("DAQSYSTEMTEST_SHARE") + ,,' sourcecode/crtmodules/integtest/crt_frame_builder_test.py

cd pythoncode
git clone https://github.com/DUNE-DAQ/integrationtest.git -b develop
cd ..

. ./env.sh
dbt-build -j 12
dbt-workarea-env

dunedaq_integtest_bundle.sh -r crtmodules

echo ""
echo -e "\U1F535 \U2705 Note that the integtest failed because the specified pre-defined configuration couldn't be found. \U2705 \U1F535"
echo ""
echo ""
sleep 3

cd pythoncode/integrationtest
git checkout kbiery/added_support_dbpath
cd ../..

dbt-build -j 12
dbt-workarea-env

dunedaq_integtest_bundle.sh -r crtmodules

echo ""
echo -e "\U1F535 \U2705 Note that the integtest now passed because the pre-defined configuration was found in the DUNEDAQ_DB_PATH. \U2705 \U1F535"
echo ""
echo ""

Type of change

  • Optimization (non-breaking change that improves code/performance)

Testing checklist

  • Minimal system quicktest passes (pytest -s minimal_system_quick_test.py)
  • Full set of integration tests pass (dunedaq_integtest_bundle.sh)

Further checks

  • Code is commented where needed, particularly in hard-to-understand areas

Kurt Biery added 2 commits June 10, 2026 15:37
…nfiguration files in one of the paths listed in the DUNEDAQ_DB_PATH env var.
…ontest_drunc.py to strip off any leading slash when checking for the preseence of the files in the DB path
@bieryAtFnal bieryAtFnal requested a review from andrewmogan June 11, 2026 14:00

@andrewmogan andrewmogan left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works as advertised. In addition to the listed test, I confirmed that minimal_system_quick_test works after switching to this branch. The code changes make sense and maintain backwards compatibility.

@bieryAtFnal bieryAtFnal merged commit f44ae02 into develop Jun 12, 2026
1 check passed
@bieryAtFnal bieryAtFnal deleted the kbiery/added_support_dbpath branch June 12, 2026 00:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants