From 39c015948337c84404b52f0a79227c7949e66851 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 19 Mar 2026 09:56:54 -0500 Subject: [PATCH 01/30] Enable linting --- .github/workflows/dunedaq-develop-cpp-ci.yml | 35 ++++++++++++++------ 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index ab22d35..d8d4ab5 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -1,7 +1,5 @@ -name: build-develop +name: Single-Package CI Build -# Controls when the action will run. Workflow runs when manually triggered using the UI -# or API. on: workflow_call: @@ -64,15 +62,12 @@ jobs: Build_against_dev_release: needs: Determine_image name: build_against_dev_on_${{ matrix.os_name }} - # The type of runner that the job will run on runs-on: ubuntu-latest strategy: matrix: include: - image: ${{ needs.determine_image.outputs.image }} os_name: "a9" - container: - image: ${{ matrix.image }} defaults: run: shell: bash @@ -84,6 +79,13 @@ jobs: with: repository: DUNE-DAQ/daq-release path: daq-release + + - uses: cvmfs-contrib/github-action-cvmfs@v5 + with: + cvmfs_repositories: 'dunedaq-development.opensciencegrid.org' + + - name: Pull build image + run: docker pull ${{ needs.determine_image.outputs.image }} - name: setup dev area run: | @@ -116,15 +118,18 @@ jobs: export REPO=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}') cd $GITHUB_WORKSPACE/dev-${{ matrix.os_name }} + cat << EOF > build_and_lint_package.sh + #!/bin/bash + . ./env.sh cd $DBT_AREA_ROOT/sourcecode if [[ "$CALLER_BRANCH" == "$TARGET_BRANCH" ]]; then - cp -pr $GITHUB_WORKSPACE/DUNE-DAQ/$REPO . + cp -pr /ghw/DUNE-DAQ/$REPO . else # Someone opened a PR export GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }} - ../../daq-release/scripts/clone_all_packages_with_branch.py --branch $CALLER_BRANCH --package-group coredaq - ../../daq-release/scripts/clone_all_packages_with_branch.py --branch $CALLER_BRANCH --package-group fddaq + ./daq-release/scripts/clone_all_packages_with_branch.py --branch $CALLER_BRANCH --package-group coredaq + ./daq-release/scripts/clone_all_packages_with_branch.py --branch $CALLER_BRANCH --package-group fddaq fi if [[ -d "./dbe" ]]; then @@ -133,7 +138,17 @@ jobs: dbt-workarea-env dbt-info sourcecode - dbt-build # --unittest done elsewhere; --lint unavailable due to llvm being too large for images + dbt-build --lint + EOF + + chmod +x build_and_lint_package.sh + + docker run --rm \ + -v /cvmfs:/cvmfs:shared \ + -v "${GITHUB_WORKSPACE}:/ghw" \ + -w /ghw \ + ${{ needs.determine_image.outputs.image }} \ + ./build_and_lint_package.sh - name: upload build log file uses: actions/upload-artifact@main From 5d4c12e93935e64f75efe4d6ce24010e9c6e5218 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 19 Mar 2026 10:58:29 -0500 Subject: [PATCH 02/30] Troubleshoot script path --- .github/workflows/dunedaq-develop-cpp-ci.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index d8d4ab5..e4a88f2 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -143,12 +143,15 @@ jobs: chmod +x build_and_lint_package.sh + echo "Where am I? $(pwd)" + echo "What's here? $(ls -l)" + docker run --rm \ -v /cvmfs:/cvmfs:shared \ -v "${GITHUB_WORKSPACE}:/ghw" \ -w /ghw \ ${{ needs.determine_image.outputs.image }} \ - ./build_and_lint_package.sh + /ghw/dev-${{ matrix.os_name }}/build_and_lint_package.sh - name: upload build log file uses: actions/upload-artifact@main From 7420750f613daf5459e2d0a21a09747ef8ef40f6 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 19 Mar 2026 11:38:47 -0500 Subject: [PATCH 03/30] Improve handling of arguments for dbt-create --- .github/workflows/dunedaq-develop-cpp-ci.yml | 32 ++++++++++++++------ 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index e4a88f2..6aa4463 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -87,25 +87,29 @@ jobs: - name: Pull build image run: docker pull ${{ needs.determine_image.outputs.image }} - - name: setup dev area + - id: setup_dev_area run: | echo "Caller branch is " "$CALLER_BRANCH" echo "Target branch is " "$TARGET_BRANCH" export REPO=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}') - source /cvmfs/dunedaq.opensciencegrid.org/setup_dunedaq.sh - setup_dbt latest + extra_dbt_args="" if [[ ${{ needs.determine_image.outputs.image }} =~ ^.*stable.* ]]; then release_name=$( ls -tr /cvmfs/dunedaq.opensciencegrid.org/spack/releases/ | grep fddaq | tail -1 ) - dbt-create $release_name dev-${{ matrix.os_name }} + #dbt-create $release_name dev-${{ matrix.os_name }} elif [[ ${{ needs.determine_image.outputs.image }} =~ ^.*candidate.* ]]; then + extra_dbt_args="-b candidate" release_name=$( ls -tr /cvmfs/dunedaq-development.opensciencegrid.org/candidates/ | grep fddaq | tail -1 ) - dbt-create -b candidate $release_name dev-${{ matrix.os_name }} + #dbt-create -b candidate $release_name dev-${{ matrix.os_name }} else + extra_dbt_args="-n" release_name=$( ls -tr /cvmfs/dunedaq-development.opensciencegrid.org/nightly/ | grep fddaq | tail -1 ) - dbt-create -n $release_name dev-${{ matrix.os_name }} + #dbt-create -n $release_name dev-${{ matrix.os_name }} fi + echo "extra_dbt_args=$extra_dbt_args" >> "$GITHUB_OUTPUT" + echo "release_name=$release_name" >> "$GITHUB_OUTPUT" + - name: checkout package for CI uses: actions/checkout@main with: @@ -121,15 +125,23 @@ jobs: cat << EOF > build_and_lint_package.sh #!/bin/bash - . ./env.sh - cd $DBT_AREA_ROOT/sourcecode + source /cvmfs/dunedaq.opensciencegrid.org/setup_dunedaq.sh + setup_dbt latest + + dbt-create ${{ steps.setup_dev_area.outputs.extra_dbt_args }} \ + ${{ steps.setup_dev_area.outputs.release_name}} \ + dev-${{ matrix.os_name }} + + cd dev-${{ matrix.os_name }} + source env.sh + cd sourcecode if [[ "$CALLER_BRANCH" == "$TARGET_BRANCH" ]]; then cp -pr /ghw/DUNE-DAQ/$REPO . else # Someone opened a PR export GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }} - ./daq-release/scripts/clone_all_packages_with_branch.py --branch $CALLER_BRANCH --package-group coredaq - ./daq-release/scripts/clone_all_packages_with_branch.py --branch $CALLER_BRANCH --package-group fddaq + /ghw/daq-release/scripts/clone_all_packages_with_branch.py --branch $CALLER_BRANCH --package-group coredaq + /ghw/daq-release/scripts/clone_all_packages_with_branch.py --branch $CALLER_BRANCH --package-group fddaq fi if [[ -d "./dbe" ]]; then From 01ee30edf7d815fbeed663a97c68bc4fb334d047 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 19 Mar 2026 13:04:15 -0500 Subject: [PATCH 04/30] Continue troubleshooting paths --- .github/workflows/dunedaq-develop-cpp-ci.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 6aa4463..1910536 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -120,7 +120,9 @@ jobs: BRANCH="$CALLER_BRANCH" export REPO=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}') - cd $GITHUB_WORKSPACE/dev-${{ matrix.os_name }} + #cd $GITHUB_WORKSPACE/dev-${{ matrix.os_name }} + + echo "Before script: $(pwd)" cat << EOF > build_and_lint_package.sh #!/bin/bash @@ -128,11 +130,14 @@ jobs: source /cvmfs/dunedaq.opensciencegrid.org/setup_dunedaq.sh setup_dbt latest + echo "Creating in container: $(pwd)" dbt-create ${{ steps.setup_dev_area.outputs.extra_dbt_args }} \ ${{ steps.setup_dev_area.outputs.release_name}} \ dev-${{ matrix.os_name }} + echo "Build area?: $(ls)" cd dev-${{ matrix.os_name }} + echo "Now in: $(pwd)" source env.sh cd sourcecode From f4c24e3456d2eef99556e5437d85bf2aecd45eef Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 19 Mar 2026 13:12:36 -0500 Subject: [PATCH 05/30] Fix(?) script path --- .github/workflows/dunedaq-develop-cpp-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 1910536..a2225e0 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -168,7 +168,7 @@ jobs: -v "${GITHUB_WORKSPACE}:/ghw" \ -w /ghw \ ${{ needs.determine_image.outputs.image }} \ - /ghw/dev-${{ matrix.os_name }}/build_and_lint_package.sh + /ghw/build_and_lint_package.sh - name: upload build log file uses: actions/upload-artifact@main From 4c2f0b32484bf5e6d06095ebaba5768638efa4c0 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 19 Mar 2026 15:12:44 -0500 Subject: [PATCH 06/30] Upload linting results as artifact --- .github/workflows/dunedaq-develop-cpp-ci.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index a2225e0..3154e4d 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -170,8 +170,20 @@ jobs: ${{ needs.determine_image.outputs.image }} \ /ghw/build_and_lint_package.sh + echo "Post-container: where am I? $(pwd)" + echo "Post-container: what's here? $(ls -l)" + + echo "Linting results?" + ls dev-${{ matrix.os_name }}/log/linting*/*_linting.log + - name: upload build log file uses: actions/upload-artifact@main with: name: build_log_${{ matrix.os_name }} path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/log/build*.log + + - name: upload linting log file + uses: actions/upload-artifact@main + with: + name: linting_results + path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/log/linting*/_linting.log From a0cea32b9ecc562ed6eb28122592f70bffaa565a Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Fri, 20 Mar 2026 11:19:34 -0500 Subject: [PATCH 07/30] Add wildcard for finding linting results --- .github/workflows/dunedaq-develop-cpp-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 3154e4d..2ab7d28 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -186,4 +186,4 @@ jobs: uses: actions/upload-artifact@main with: name: linting_results - path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/log/linting*/_linting.log + path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/log/linting*/*_linting.log From dafcf988c87b6b7cd30b5fd502646d2a6eb64b6f Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Fri, 20 Mar 2026 12:07:49 -0500 Subject: [PATCH 08/30] On pull request, compare to nightly linting --- .github/workflows/dunedaq-develop-cpp-ci.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 2ab7d28..94c34e4 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -187,3 +187,23 @@ jobs: with: name: linting_results path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/log/linting*/*_linting.log + + - name: Download nightly linting results + if: ${{ github.event_name == 'pull_request' }} + uses: actions/download-artifact@main + with: + name: linting_results + path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/nightly_linting_results.log + + - name: Compare to nightly linting results + if: ${{ github.event_name == 'pull_request' }} + run: | + pr_linting_results_file=$(dev-${{ matrix.os_name }}/log/linting*/*_linting.log) + nightly_linting_results_file=$(dev-${{ matrix.os_name }}/nightly_linting_results.log) + [[ -f "$pr_linting_results_file" ]] || echo "ERROR: No PR results file; exit 1" + [[ -f "$nightly_linting_results_file" ]] || echo "ERROR: No nightly results file; exit 2" + if ! diff "$pr_linting_results_file" "$nightly_linting_results_file" > linting_diff.txt; then + echo "ERROR: This PR introduces new linting errors:" + cat linting_diff.txt + exit 1 + fi From 9436b266d13db9ac94597ccc54ef0c205a6db596 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Fri, 20 Mar 2026 15:17:42 -0500 Subject: [PATCH 09/30] Use caller event as input --- .github/workflows/dunedaq-develop-cpp-ci.yml | 88 ++++++++++++++------ 1 file changed, 64 insertions(+), 24 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 94c34e4..e1b29d3 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -2,6 +2,11 @@ name: Single-Package CI Build on: workflow_call: + inputs: + caller_event_name: + required: true + type: string + description: "Flag to distinguish between e.g. schedule and pull request" env: CALLER_BRANCH: ${{ github.head_ref || github.ref_name }} @@ -87,7 +92,7 @@ jobs: - name: Pull build image run: docker pull ${{ needs.determine_image.outputs.image }} - - id: setup_dev_area + - id: get_release_info run: | echo "Caller branch is " "$CALLER_BRANCH" echo "Target branch is " "$TARGET_BRANCH" @@ -96,15 +101,12 @@ jobs: extra_dbt_args="" if [[ ${{ needs.determine_image.outputs.image }} =~ ^.*stable.* ]]; then release_name=$( ls -tr /cvmfs/dunedaq.opensciencegrid.org/spack/releases/ | grep fddaq | tail -1 ) - #dbt-create $release_name dev-${{ matrix.os_name }} elif [[ ${{ needs.determine_image.outputs.image }} =~ ^.*candidate.* ]]; then extra_dbt_args="-b candidate" release_name=$( ls -tr /cvmfs/dunedaq-development.opensciencegrid.org/candidates/ | grep fddaq | tail -1 ) - #dbt-create -b candidate $release_name dev-${{ matrix.os_name }} else extra_dbt_args="-n" release_name=$( ls -tr /cvmfs/dunedaq-development.opensciencegrid.org/nightly/ | grep fddaq | tail -1 ) - #dbt-create -n $release_name dev-${{ matrix.os_name }} fi echo "extra_dbt_args=$extra_dbt_args" >> "$GITHUB_OUTPUT" @@ -131,8 +133,8 @@ jobs: setup_dbt latest echo "Creating in container: $(pwd)" - dbt-create ${{ steps.setup_dev_area.outputs.extra_dbt_args }} \ - ${{ steps.setup_dev_area.outputs.release_name}} \ + dbt-create ${{ steps.get_release_info.outputs.extra_dbt_args }} \ + ${{ steps.get_release_info.outputs.release_name}} \ dev-${{ matrix.os_name }} echo "Build area?: $(ls)" @@ -160,9 +162,6 @@ jobs: chmod +x build_and_lint_package.sh - echo "Where am I? $(pwd)" - echo "What's here? $(ls -l)" - docker run --rm \ -v /cvmfs:/cvmfs:shared \ -v "${GITHUB_WORKSPACE}:/ghw" \ @@ -170,40 +169,81 @@ jobs: ${{ needs.determine_image.outputs.image }} \ /ghw/build_and_lint_package.sh - echo "Post-container: where am I? $(pwd)" - echo "Post-container: what's here? $(ls -l)" - - echo "Linting results?" - ls dev-${{ matrix.os_name }}/log/linting*/*_linting.log - - name: upload build log file uses: actions/upload-artifact@main with: name: build_log_${{ matrix.os_name }} path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/log/build*.log + - name: set linting artifact name + id: set_artifact_name + run: | + linting_artifact_name="linting_results" + if [[ ${{ inputs.caller_event_name == 'schedule' }} ]]; then + linting_artifact_name="nightly_linting_results" + fi + echo "linting_artifact_name=$linting_artifact_name" >> "$GITHUB_OUTPUT" + - name: upload linting log file uses: actions/upload-artifact@main with: - name: linting_results + name: ${{ steps.set_artifact_name.outputs.linting_artifact_name }} path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/log/linting*/*_linting.log + + compare_linting_results: + if: ${{ inputs.caller_event_name == 'pull_request' }} + runs-on: ubuntu-latest + defaults: + run: + shell: bash + + steps: + - name: Get ID of latest nightly run + id: latest_nightly + env: + GH_TOKEN: ${{ github.token }} + run: | + run_id=$(gh run list \ + --repo ${{ github.repository }} + --workflow dunedaq-develop-cpp-ci.yml \ + --event schedule \ + --limit 1 \ + --json databaseId \ + --jq '.[0].databaseId') + + echo "run_id=$run_id" >> "$GITHUB_OUTPUT" + + - name: Download latest nightly linting results + uses: actions/download-artifact@main + with: + name: nightly_linting_results + run-id: ${{ steps.latest_nightly.outputs.run_id }} - - name: Download nightly linting results - if: ${{ github.event_name == 'pull_request' }} + - name: Download pull request linting results uses: actions/download-artifact@main with: - name: linting_results - path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/nightly_linting_results.log + name: pull_request_linting_results - - name: Compare to nightly linting results - if: ${{ github.event_name == 'pull_request' }} + - name: Compare linting results + id: compare + continue-on-error: true run: | + diff_file_name=linting_diff.txt pr_linting_results_file=$(dev-${{ matrix.os_name }}/log/linting*/*_linting.log) nightly_linting_results_file=$(dev-${{ matrix.os_name }}/nightly_linting_results.log) + [[ -f "$pr_linting_results_file" ]] || echo "ERROR: No PR results file; exit 1" [[ -f "$nightly_linting_results_file" ]] || echo "ERROR: No nightly results file; exit 2" - if ! diff "$pr_linting_results_file" "$nightly_linting_results_file" > linting_diff.txt; then + + if ! diff "$pr_linting_results_file" "$nightly_linting_results_file" > "$diff_file_name"; then echo "ERROR: This PR introduces new linting errors:" - cat linting_diff.txt + cat "$diff_file_name" + echo "diff_file_name=$diff_file_name" >> "$GITHUB_OUTPUT" exit 1 fi + + - name: upload linting diff file + uses: actions/upload-artifact@main + with: + name: linting_diff + path: ${{ github.workspace }}/${{ steps.compare.outputs.diff_file_name }} From 4c0df723c6995994611589ddbe762f6b543fac98 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Mon, 23 Mar 2026 10:29:12 -0500 Subject: [PATCH 10/30] Only upload compare results if they exist --- .github/workflows/dunedaq-develop-cpp-ci.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index e1b29d3..8bf9160 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -178,7 +178,7 @@ jobs: - name: set linting artifact name id: set_artifact_name run: | - linting_artifact_name="linting_results" + linting_artifact_name="pull_request_linting_results" if [[ ${{ inputs.caller_event_name == 'schedule' }} ]]; then linting_artifact_name="nightly_linting_results" fi @@ -243,7 +243,8 @@ jobs: fi - name: upload linting diff file + if: steps.compare.outputs.diff_file_name uses: actions/upload-artifact@main with: name: linting_diff - path: ${{ github.workspace }}/${{ steps.compare.outputs.diff_file_name }} + path: ${{ steps.compare.outputs.diff_file_name }} From 4531a80529a884a51020d3e661456b0bacdcdc88 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Mon, 23 Mar 2026 10:59:25 -0500 Subject: [PATCH 11/30] Add needs context for compare job --- .github/workflows/dunedaq-develop-cpp-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 8bf9160..cc9079b 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -192,6 +192,7 @@ jobs: compare_linting_results: if: ${{ inputs.caller_event_name == 'pull_request' }} + needs: Build_against_dev_release runs-on: ubuntu-latest defaults: run: From 3ec2b214c5af098ea3ab860e37ab13e6a989c3ae Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Mon, 23 Mar 2026 11:25:22 -0500 Subject: [PATCH 12/30] Add backslash --- .github/workflows/dunedaq-develop-cpp-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index cc9079b..518ba6f 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -205,7 +205,7 @@ jobs: GH_TOKEN: ${{ github.token }} run: | run_id=$(gh run list \ - --repo ${{ github.repository }} + --repo ${{ github.repository }} \ --workflow dunedaq-develop-cpp-ci.yml \ --event schedule \ --limit 1 \ From cc5806ffada903072e8b0c00580bead10e8847cb Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Mon, 23 Mar 2026 14:30:52 -0500 Subject: [PATCH 13/30] Troubleshoot event name --- .github/workflows/dunedaq-develop-cpp-ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 518ba6f..b993ed3 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -175,6 +175,10 @@ jobs: name: build_log_${{ matrix.os_name }} path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/log/build*.log + - name: Troubleshoot event name + run: | + echo "Event name = ${{ inputs.caller_event_name }}" + - name: set linting artifact name id: set_artifact_name run: | From 64f365841b74ee6640f7e86824c3d28381e94abb Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Tue, 24 Mar 2026 09:11:50 -0500 Subject: [PATCH 14/30] Fix logic syntax --- .github/workflows/dunedaq-develop-cpp-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index b993ed3..9733293 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -183,9 +183,10 @@ jobs: id: set_artifact_name run: | linting_artifact_name="pull_request_linting_results" - if [[ ${{ inputs.caller_event_name == 'schedule' }} ]]; then + if [[ "${{ inputs.caller_event_name }}" == "schedule" ]]; then linting_artifact_name="nightly_linting_results" fi + echo "linting_artifact_name=$linting_artifact_name" echo "linting_artifact_name=$linting_artifact_name" >> "$GITHUB_OUTPUT" - name: upload linting log file From 72343b41e2610c866451b35bd637f6ee6f1adb71 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Tue, 24 Mar 2026 09:19:44 -0500 Subject: [PATCH 15/30] Manually set run ID for fake nightly linting results --- .github/workflows/dunedaq-develop-cpp-ci.yml | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 9733293..1e76e52 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -209,13 +209,18 @@ jobs: env: GH_TOKEN: ${{ github.token }} run: | - run_id=$(gh run list \ - --repo ${{ github.repository }} \ - --workflow dunedaq-develop-cpp-ci.yml \ - --event schedule \ - --limit 1 \ - --json databaseId \ - --jq '.[0].databaseId') + #run_id=$(gh run list \ + # --repo ${{ github.repository }} \ + # --workflow dunedaq-develop-cpp-ci.yml \ + # --event schedule \ + # --limit 1 \ + # --json databaseId \ + # --jq '.[0].databaseId') + + # TODO: Hard-coding alert to a fake scheduled run with linting results + # Longer term, the nightly linting should upload linting results and the + # above expression should work + run_id=23493490741 echo "run_id=$run_id" >> "$GITHUB_OUTPUT" From 513acc4c2ba2a9a00cad148fb028f63b9df7ac43 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Tue, 24 Mar 2026 09:53:02 -0500 Subject: [PATCH 16/30] Fix run number --- .github/workflows/dunedaq-develop-cpp-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 1e76e52..96bcd77 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -220,7 +220,7 @@ jobs: # TODO: Hard-coding alert to a fake scheduled run with linting results # Longer term, the nightly linting should upload linting results and the # above expression should work - run_id=23493490741 + run_id=23444192414 echo "run_id=$run_id" >> "$GITHUB_OUTPUT" From 865838f48941bbfb9ccf63572dd50d1e7b3a692c Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Tue, 24 Mar 2026 10:26:37 -0500 Subject: [PATCH 17/30] Update contents permission --- .github/workflows/dunedaq-develop-cpp-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 96bcd77..8e3d0af 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -1,5 +1,8 @@ name: Single-Package CI Build +permissions: + contents: read + on: workflow_call: inputs: From 8ed2767cf19bb086c584b87e7345d29d464838cd Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Tue, 24 Mar 2026 10:48:59 -0500 Subject: [PATCH 18/30] Use GitHub token for permissions --- .github/workflows/dunedaq-develop-cpp-ci.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 8e3d0af..ee89593 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -227,9 +227,17 @@ jobs: echo "run_id=$run_id" >> "$GITHUB_OUTPUT" + - name: List artifacts on the target run + env: + GH_TOKEN: ${{ github.token }} + run: | + gh api repos/DUNE-DAQ/hdf5libs/actions/runs/${{ steps.latest_nightly.outputs.run_id }}/artifacts \ + --jq '.artifacts[] | [.name, .expired, .size_in_bytes] | @tsv' + - name: Download latest nightly linting results uses: actions/download-artifact@main with: + github-token: ${{ github.token }} name: nightly_linting_results run-id: ${{ steps.latest_nightly.outputs.run_id }} From ba2a3e63ea755c78870e11b5edbcfe6d7c11516e Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Tue, 24 Mar 2026 11:33:08 -0500 Subject: [PATCH 19/30] Troubleshoot artifact paths --- .github/workflows/dunedaq-develop-cpp-ci.yml | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index ee89593..4febb42 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -246,13 +246,23 @@ jobs: with: name: pull_request_linting_results + - name: List contents + run: | + echo "Where am I?" + pwd + echo "What's here?" + ls -lrt + - name: Compare linting results id: compare continue-on-error: true run: | diff_file_name=linting_diff.txt - pr_linting_results_file=$(dev-${{ matrix.os_name }}/log/linting*/*_linting.log) - nightly_linting_results_file=$(dev-${{ matrix.os_name }}/nightly_linting_results.log) + pr_linting_results_file=$(find . -name *_linting.log) + nightly_linting_results_file=$(find . -name nightly_linting_results.log) + + echo "pr_linting_results_file=$pr_linting_results" + echo "nightly_linting_results_file=$nightly_linting_results" [[ -f "$pr_linting_results_file" ]] || echo "ERROR: No PR results file; exit 1" [[ -f "$nightly_linting_results_file" ]] || echo "ERROR: No nightly results file; exit 2" From 79cc1e25f4b5362800ef5d83897e91662f4b430a Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Tue, 24 Mar 2026 11:55:21 -0500 Subject: [PATCH 20/30] Improve artifact finding --- .github/workflows/dunedaq-develop-cpp-ci.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 4febb42..b6df665 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -239,12 +239,14 @@ jobs: with: github-token: ${{ github.token }} name: nightly_linting_results + path: nightly_linting run-id: ${{ steps.latest_nightly.outputs.run_id }} - name: Download pull request linting results uses: actions/download-artifact@main with: name: pull_request_linting_results + path: pull_request_linting - name: List contents run: | @@ -258,8 +260,8 @@ jobs: continue-on-error: true run: | diff_file_name=linting_diff.txt - pr_linting_results_file=$(find . -name *_linting.log) - nightly_linting_results_file=$(find . -name nightly_linting_results.log) + pr_linting_results_file=$(find pull_request_linting/ -name "*_linting.log" | tail -n 1) + nightly_linting_results_file=$(find nightly_linting/ -name "*_linting.log" | tail -n 1) echo "pr_linting_results_file=$pr_linting_results" echo "nightly_linting_results_file=$nightly_linting_results" From 7834e06ae2002320912c2f94d207839b1764f400 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Wed, 25 Mar 2026 10:28:58 -0500 Subject: [PATCH 21/30] Normalize linting results for better comparison --- .github/workflows/dunedaq-develop-cpp-ci.yml | 27 +++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index b6df665..fb8c22b 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -257,8 +257,18 @@ jobs: - name: Compare linting results id: compare - continue-on-error: true run: | + normalize_lint() { + sed -E ' + s#^/[^ ]*/(sourcecode/.*)#\1#; # drop leading absolute path before sourcecode/ + s#:[0-9]+:[0-9]+:#:#g; # drop :line:col: + s#:[0-9]+:#:#g; # drop :line: + /^Total errors found:/d; # drop summary + ' "$1" | + grep -E '\[[^][]+\]' | # keep only lines with a [check] + sort -u + } + diff_file_name=linting_diff.txt pr_linting_results_file=$(find pull_request_linting/ -name "*_linting.log" | tail -n 1) nightly_linting_results_file=$(find nightly_linting/ -name "*_linting.log" | tail -n 1) @@ -269,15 +279,26 @@ jobs: [[ -f "$pr_linting_results_file" ]] || echo "ERROR: No PR results file; exit 1" [[ -f "$nightly_linting_results_file" ]] || echo "ERROR: No nightly results file; exit 2" - if ! diff "$pr_linting_results_file" "$nightly_linting_results_file" > "$diff_file_name"; then + nightly_norm = $(mktemp) + pr_norm = $(mktemp) + + normalize_lint "$nightly_linting_results" > "$nightly_norm" + normalize_lint "$pr_linting_results" > "$pr_norm" + + comm -13 "$nightly_norm" "$pr_norm" > "$diff_file_name" + + if [[ -s "$diff_file_name" ]]; then echo "ERROR: This PR introduces new linting errors:" cat "$diff_file_name" + echo "diff_exists=true" >> "$GITHUB_OUTPUT" echo "diff_file_name=$diff_file_name" >> "$GITHUB_OUTPUT" exit 1 + else + diff_exists="false" fi - name: upload linting diff file - if: steps.compare.outputs.diff_file_name + if: ${{ always() && steps.compare.outputs.diff_exists == 'true' }} uses: actions/upload-artifact@main with: name: linting_diff From d313d744ef9d995f6f0e9688a923f9dd9f2503d4 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Wed, 25 Mar 2026 11:01:11 -0500 Subject: [PATCH 22/30] Fix syntax error --- .github/workflows/dunedaq-develop-cpp-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index fb8c22b..aabb22c 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -279,8 +279,8 @@ jobs: [[ -f "$pr_linting_results_file" ]] || echo "ERROR: No PR results file; exit 1" [[ -f "$nightly_linting_results_file" ]] || echo "ERROR: No nightly results file; exit 2" - nightly_norm = $(mktemp) - pr_norm = $(mktemp) + nightly_norm=$(mktemp) + pr_norm=$(mktemp) normalize_lint "$nightly_linting_results" > "$nightly_norm" normalize_lint "$pr_linting_results" > "$pr_norm" From e0e4d75e794b3d6c23040081f09f756f6513dc75 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Wed, 25 Mar 2026 11:29:45 -0500 Subject: [PATCH 23/30] Fix file names --- .github/workflows/dunedaq-develop-cpp-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index aabb22c..696dc5c 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -282,8 +282,8 @@ jobs: nightly_norm=$(mktemp) pr_norm=$(mktemp) - normalize_lint "$nightly_linting_results" > "$nightly_norm" - normalize_lint "$pr_linting_results" > "$pr_norm" + normalize_lint "$nightly_linting_results_file" > "$nightly_norm" + normalize_lint "$pr_linting_results_file" > "$pr_norm" comm -13 "$nightly_norm" "$pr_norm" > "$diff_file_name" From f4b46be525d6a392850be30260098ad701a80058 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Wed, 25 Mar 2026 13:18:29 -0500 Subject: [PATCH 24/30] Improve sed command --- .github/workflows/dunedaq-develop-cpp-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 696dc5c..e481958 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -263,6 +263,7 @@ jobs: s#^/[^ ]*/(sourcecode/.*)#\1#; # drop leading absolute path before sourcecode/ s#:[0-9]+:[0-9]+:#:#g; # drop :line:col: s#:[0-9]+:#:#g; # drop :line: + /^[ ]*[0-9]+[ ]\|/d; # Remove lines starting with " line | " /^Total errors found:/d; # drop summary ' "$1" | grep -E '\[[^][]+\]' | # keep only lines with a [check] From 05ca4e004169d572bdac62706b5077fc4ff7ff29 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Tue, 31 Mar 2026 10:45:19 -0500 Subject: [PATCH 25/30] Remove debug/troubleshooting bits --- .github/workflows/dunedaq-develop-cpp-ci.yml | 55 ++++---------------- 1 file changed, 11 insertions(+), 44 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index e481958..5a777a9 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -1,4 +1,4 @@ -name: Single-Package CI Build +name: Single-Package CI Build and Linting permissions: contents: read @@ -81,7 +81,6 @@ jobs: shell: bash steps: - - name: Checkout daq-release uses: actions/checkout@main with: @@ -99,7 +98,6 @@ jobs: run: | echo "Caller branch is " "$CALLER_BRANCH" echo "Target branch is " "$TARGET_BRANCH" - export REPO=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}') extra_dbt_args="" if [[ ${{ needs.determine_image.outputs.image }} =~ ^.*stable.* ]]; then @@ -125,9 +123,6 @@ jobs: BRANCH="$CALLER_BRANCH" export REPO=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}') - #cd $GITHUB_WORKSPACE/dev-${{ matrix.os_name }} - - echo "Before script: $(pwd)" cat << EOF > build_and_lint_package.sh #!/bin/bash @@ -135,14 +130,10 @@ jobs: source /cvmfs/dunedaq.opensciencegrid.org/setup_dunedaq.sh setup_dbt latest - echo "Creating in container: $(pwd)" dbt-create ${{ steps.get_release_info.outputs.extra_dbt_args }} \ ${{ steps.get_release_info.outputs.release_name}} \ dev-${{ matrix.os_name }} - - echo "Build area?: $(ls)" cd dev-${{ matrix.os_name }} - echo "Now in: $(pwd)" source env.sh cd sourcecode @@ -178,10 +169,6 @@ jobs: name: build_log_${{ matrix.os_name }} path: ${{ github.workspace }}/dev-${{ matrix.os_name }}/log/build*.log - - name: Troubleshoot event name - run: | - echo "Event name = ${{ inputs.caller_event_name }}" - - name: set linting artifact name id: set_artifact_name run: | @@ -189,7 +176,6 @@ jobs: if [[ "${{ inputs.caller_event_name }}" == "schedule" ]]; then linting_artifact_name="nightly_linting_results" fi - echo "linting_artifact_name=$linting_artifact_name" echo "linting_artifact_name=$linting_artifact_name" >> "$GITHUB_OUTPUT" - name: upload linting log file @@ -212,28 +198,19 @@ jobs: env: GH_TOKEN: ${{ github.token }} run: | - #run_id=$(gh run list \ - # --repo ${{ github.repository }} \ - # --workflow dunedaq-develop-cpp-ci.yml \ - # --event schedule \ - # --limit 1 \ - # --json databaseId \ - # --jq '.[0].databaseId') - - # TODO: Hard-coding alert to a fake scheduled run with linting results - # Longer term, the nightly linting should upload linting results and the - # above expression should work + run_id=$(gh run list \ + --repo ${{ github.repository }} \ + --workflow dunedaq-develop-cpp-ci.yml \ + --event schedule \ + --limit 1 \ + --json databaseId \ + --jq '.[0].databaseId') + + # TODO: Remove hard-coding before merge run_id=23444192414 echo "run_id=$run_id" >> "$GITHUB_OUTPUT" - - name: List artifacts on the target run - env: - GH_TOKEN: ${{ github.token }} - run: | - gh api repos/DUNE-DAQ/hdf5libs/actions/runs/${{ steps.latest_nightly.outputs.run_id }}/artifacts \ - --jq '.artifacts[] | [.name, .expired, .size_in_bytes] | @tsv' - - name: Download latest nightly linting results uses: actions/download-artifact@main with: @@ -248,13 +225,6 @@ jobs: name: pull_request_linting_results path: pull_request_linting - - name: List contents - run: | - echo "Where am I?" - pwd - echo "What's here?" - ls -lrt - - name: Compare linting results id: compare run: | @@ -274,9 +244,6 @@ jobs: pr_linting_results_file=$(find pull_request_linting/ -name "*_linting.log" | tail -n 1) nightly_linting_results_file=$(find nightly_linting/ -name "*_linting.log" | tail -n 1) - echo "pr_linting_results_file=$pr_linting_results" - echo "nightly_linting_results_file=$nightly_linting_results" - [[ -f "$pr_linting_results_file" ]] || echo "ERROR: No PR results file; exit 1" [[ -f "$nightly_linting_results_file" ]] || echo "ERROR: No nightly results file; exit 2" @@ -299,7 +266,7 @@ jobs: fi - name: upload linting diff file - if: ${{ always() && steps.compare.outputs.diff_exists == 'true' }} + if: ${{ steps.compare.outputs.diff_exists == 'true' }} uses: actions/upload-artifact@main with: name: linting_diff From e3cdbf6c35beacd84046e289d2d7747eb354bc39 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Wed, 1 Apr 2026 10:51:03 -0500 Subject: [PATCH 26/30] Provide caller_event_name in workflow template --- workflow-templates/dunedaq-develop-cpp-ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/workflow-templates/dunedaq-develop-cpp-ci.yml b/workflow-templates/dunedaq-develop-cpp-ci.yml index 8a52577..9c65f5a 100644 --- a/workflow-templates/dunedaq-develop-cpp-ci.yml +++ b/workflow-templates/dunedaq-develop-cpp-ci.yml @@ -1,7 +1,5 @@ name: build-develop -# Controls when the action will run. Workflow runs when manually triggered using the UI -# or API. on: push: branches: @@ -25,4 +23,6 @@ on: jobs: build_develop_dispatch: name: Build against the development release - uses: DUNE-DAQ/.github/.github/workflows/dunedaq-develop-cpp-ci.yml@develop \ No newline at end of file + uses: DUNE-DAQ/.github/.github/workflows/dunedaq-develop-cpp-ci.yml@develop + with: + caller_event_name: ${{ github.event_name }} \ No newline at end of file From d7741b284f41615f42cf3ac1bbf1e96fa841f258 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 2 Apr 2026 10:15:13 -0500 Subject: [PATCH 27/30] Add manual workflow trigger --- .github/workflows/dunedaq-develop-cpp-ci.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 5a777a9..864f2f3 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -4,6 +4,13 @@ permissions: contents: read on: + workflow_dispatch: + inputs: + caller_event_name: + default: 'schedule' + type: string + description: "Enter 'pull_request' (without quotes) to compare results to latest nightly linting results." + workflow_call: inputs: caller_event_name: From ac6871c7e86abd5e3eb168c67e680be47385d22c Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 2 Apr 2026 10:18:26 -0500 Subject: [PATCH 28/30] Revert "Add manual workflow trigger" This reverts commit d7741b284f41615f42cf3ac1bbf1e96fa841f258. --- .github/workflows/dunedaq-develop-cpp-ci.yml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 864f2f3..5a777a9 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -4,13 +4,6 @@ permissions: contents: read on: - workflow_dispatch: - inputs: - caller_event_name: - default: 'schedule' - type: string - description: "Enter 'pull_request' (without quotes) to compare results to latest nightly linting results." - workflow_call: inputs: caller_event_name: From f247c6e9841a07f5f216e26decfe1e61cd0b37a3 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 2 Apr 2026 11:50:01 -0500 Subject: [PATCH 29/30] Add workflow_dispatch trigger --- workflow-templates/dunedaq-develop-cpp-ci.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/workflow-templates/dunedaq-develop-cpp-ci.yml b/workflow-templates/dunedaq-develop-cpp-ci.yml index 9c65f5a..067fb7f 100644 --- a/workflow-templates/dunedaq-develop-cpp-ci.yml +++ b/workflow-templates/dunedaq-develop-cpp-ci.yml @@ -1,4 +1,4 @@ -name: build-develop +name: Single-Package CI Build and Linting on: push: @@ -19,10 +19,15 @@ on: - cron: "0 9 * * *" workflow_dispatch: + inputs: + caller_event_name: + type: string + default: 'schedule' + description: "Enter 'pull_request' (without quotes) to compare linting results to previous linting results." jobs: build_develop_dispatch: name: Build against the development release uses: DUNE-DAQ/.github/.github/workflows/dunedaq-develop-cpp-ci.yml@develop with: - caller_event_name: ${{ github.event_name }} \ No newline at end of file + caller_event_name: ${{ github.event.inputs.caller_event_name || github.event_name }} \ No newline at end of file From 333e57ab488eea461dfc1bd2fe08133ecce94540 Mon Sep 17 00:00:00 2001 From: Andrew Mogan Date: Thu, 2 Apr 2026 13:44:11 -0500 Subject: [PATCH 30/30] Remove hard-coded run ID --- .github/workflows/dunedaq-develop-cpp-ci.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/dunedaq-develop-cpp-ci.yml b/.github/workflows/dunedaq-develop-cpp-ci.yml index 5a777a9..348d308 100644 --- a/.github/workflows/dunedaq-develop-cpp-ci.yml +++ b/.github/workflows/dunedaq-develop-cpp-ci.yml @@ -206,9 +206,7 @@ jobs: --json databaseId \ --jq '.[0].databaseId') - # TODO: Remove hard-coding before merge - run_id=23444192414 - + echo "Comparing results to those from run_id=$run_id" echo "run_id=$run_id" >> "$GITHUB_OUTPUT" - name: Download latest nightly linting results