From 66b4ea2a5188ea6b6e722a6e746a5ab16da2aeb0 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 13:40:53 +0100 Subject: [PATCH 01/24] Add workflow to prepare test data --- .github/workflows/prepare_test_data.yml | 52 +++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 .github/workflows/prepare_test_data.yml diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml new file mode 100644 index 000000000..1ba4ce2b4 --- /dev/null +++ b/.github/workflows/prepare_test_data.yml @@ -0,0 +1,52 @@ +name: Prepare test data release + +on: + workflow_dispatch: + pull_request: + types: [opened, synchronize, reopened, ready_for_review] + paths: + - .github/workflows/prepare_test_data.yml + +env: + ZENODO_RECORD_ID: 17423608 + RELEASE_TAG: testdata-zenodo.17423608 + ARCHIVE_NAME: test_data.tar.zst + +jobs: + build-and-release: + name: Download and publish test data + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: "3.10" + + - name: Install tools + run: | + python -m pip install --upgrade pip + python -m pip install zenodo-get + sudo apt-get update + sudo apt-get install -y zstd + + - name: Download dataset from Zenodo + run: | + mkdir -p test_data + cd test_data + zenodo_get $ZENODO_RECORD_ID + cd - + + - name: Create compressed archive + run: | + tar -I zstd -cf "${ARCHIVE_NAME}" test_data/ + + - name: Publish Release asset (creates or updates a prerelease) + uses: softprops/action-gh-release@v2 + with: + tag_name: ${{ env.RELEASE_TAG }} + name: ${{ env.RELEASE_TAG }} + prerelease: true + files: ${{ env.ARCHIVE_NAME }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From 10fb59e38fc447bd7b23afdfc629a61cbe1b4158 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 13:44:17 +0100 Subject: [PATCH 02/24] Fix release tag --- .github/workflows/prepare_test_data.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index 1ba4ce2b4..095581b02 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -9,7 +9,7 @@ on: env: ZENODO_RECORD_ID: 17423608 - RELEASE_TAG: testdata-zenodo.17423608 + RELEASE_TAG_TEMPLATE: testdata-zenodo. ARCHIVE_NAME: test_data.tar.zst jobs: @@ -44,8 +44,8 @@ jobs: - name: Publish Release asset (creates or updates a prerelease) uses: softprops/action-gh-release@v2 with: - tag_name: ${{ env.RELEASE_TAG }} - name: ${{ env.RELEASE_TAG }} + tag_name: ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID}} + name: ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID}} prerelease: true files: ${{ env.ARCHIVE_NAME }} env: From e406014370cfb8e4ecb55aa789b73860b9190879 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 14:32:36 +0100 Subject: [PATCH 03/24] Prevent prereleases to be published to PyPi --- .github/workflows/release_pypi.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release_pypi.yml b/.github/workflows/release_pypi.yml index e378911d8..6501aa9b7 100644 --- a/.github/workflows/release_pypi.yml +++ b/.github/workflows/release_pypi.yml @@ -4,7 +4,7 @@ on: workflow_dispatch: release: types: - - published + - released jobs: build: From 22b58a6c3b01fbc8d941d41098d64d0e8e078d59 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 14:32:53 +0100 Subject: [PATCH 04/24] Build release using gh cli --- .github/workflows/prepare_test_data.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index 095581b02..d2a69ba87 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -42,11 +42,12 @@ jobs: tar -I zstd -cf "${ARCHIVE_NAME}" test_data/ - name: Publish Release asset (creates or updates a prerelease) - uses: softprops/action-gh-release@v2 - with: - tag_name: ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID}} - name: ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID}} - prerelease: true - files: ${{ env.ARCHIVE_NAME }} + run: | + gh release create \ + ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID }} \ + --prerelease \ + --title ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID }} \ + --notes "Automated test data release for Zenodo record ID $ZENODO_RECORD_ID" \ + ${{ env.ARCHIVE_NAME }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From 65b33824a2372839e97d9771918cd7e448763446 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 14:40:22 +0100 Subject: [PATCH 05/24] Update testing to download asset --- .github/workflows/testing.yml | 37 ++++++++++++----------------------- 1 file changed, 13 insertions(+), 24 deletions(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 62bfa4950..3e4191be7 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -26,37 +26,26 @@ jobs: python-version: ["3.10"] name: Test and build for ${{ matrix.python-version }}, ${{ matrix.os }} steps: + - name: Install zstd + run: | + sudo apt-get update + sudo apt-get install -y zstd - uses: actions/checkout@v4 - uses: ./.github/actions/install_eitprocessing with: dependencies: testing python-version: ${{ matrix.python-version }} token: ${{ secrets.GITHUB_TOKEN }} - - name: Set data dir - shell: bash - id: set-path - run: echo "data_dir=$GITHUB_WORKSPACE/test_data" >> "$GITHUB_OUTPUT" - - name: Restore dataset cache - id: cache - uses: actions/cache@v4 + - name: Download test data archive from release + uses: robinraju/release-downloader@v1.11 with: - path: ${{ steps.set-path.outputs.data_dir }} - key: eitprocessing-testdata-zenodo.${{ env.ZENODO_RECORD_ID }} - - name: Install zenodo-get - if: steps.cache.outputs.cache-hit != 'true' - run: python3 -m pip install zenodo-get - shell: bash - - name: Download test dataset - shell: bash - if: steps.cache.outputs['cache-hit'] != 'true' + repository: ${{ github.repository }} + tag: testdata-zenodo.${{ env.ZENODO_RECORD_ID }} + fileName: test_data.tar.zst + out-file-path: ${{ github.workspace }} + - name: Extract test data run: | - mkdir -p ${{ steps.set-path.outputs.data_dir }} - cd ${{ steps.set-path.outputs.data_dir }} - zenodo_get $ZENODO_RECORD_ID - cd - - - name: Uninstall zenodo-get - if: steps.cache.outputs['cache-hit'] != 'true' - run: python3 -m pip uninstall --yes zenodo-get - shell: bash + tar -x -f test_data.tar.zst + rm test_data.tar.zst - name: Run pytest run: pytest -v From c46e3ca2d738ba2dcfa457304a7fe56ab5ead2aa Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 14:43:20 +0100 Subject: [PATCH 06/24] Use gh cli for download --- .github/workflows/testing.yml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 3e4191be7..d737722cc 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -37,12 +37,8 @@ jobs: python-version: ${{ matrix.python-version }} token: ${{ secrets.GITHUB_TOKEN }} - name: Download test data archive from release - uses: robinraju/release-downloader@v1.11 - with: - repository: ${{ github.repository }} - tag: testdata-zenodo.${{ env.ZENODO_RECORD_ID }} - fileName: test_data.tar.zst - out-file-path: ${{ github.workspace }} + run: | + gh release download testdata-zenodo.${{ env.ZENODO_RECORD_ID }} --pattern "test_data.tar.zst" - name: Extract test data run: | tar -x -f test_data.tar.zst From 0da2a4f9b4435908fc6c1229d88a3ddad40526c8 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 14:45:01 +0100 Subject: [PATCH 07/24] Add GitHub token --- .github/workflows/testing.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index d737722cc..2997edcfe 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -37,6 +37,8 @@ jobs: python-version: ${{ matrix.python-version }} token: ${{ secrets.GITHUB_TOKEN }} - name: Download test data archive from release + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | gh release download testdata-zenodo.${{ env.ZENODO_RECORD_ID }} --pattern "test_data.tar.zst" - name: Extract test data From 69c0f7959b0b7f1a09ebabb71d9e6e9280272455 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 14:48:08 +0100 Subject: [PATCH 08/24] Fix release tag --- .github/workflows/testing.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 2997edcfe..2beaeffe9 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -40,7 +40,7 @@ jobs: env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | - gh release download testdata-zenodo.${{ env.ZENODO_RECORD_ID }} --pattern "test_data.tar.zst" + gh release download testdata_zenodo.${{ env.ZENODO_RECORD_ID }} --pattern "test_data.tar.zst" - name: Extract test data run: | tar -x -f test_data.tar.zst From 14a3076c43b68e192c03f454f6d15cbac3a9928e Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:06:13 +0100 Subject: [PATCH 09/24] Include prepare_test_data in testing workflow --- .github/workflows/prepare_test_data.yml | 26 ++++++++++++++++++++----- .github/workflows/testing.yml | 5 +++++ 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index d2a69ba87..9dd58496d 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -2,13 +2,13 @@ name: Prepare test data release on: workflow_dispatch: - pull_request: - types: [opened, synchronize, reopened, ready_for_review] - paths: - - .github/workflows/prepare_test_data.yml + workflow_call: + # pull_request: + # types: [opened, synchronize, reopened, ready_for_review] + # paths: + # - .github/workflows/prepare_test_data.yml env: - ZENODO_RECORD_ID: 17423608 RELEASE_TAG_TEMPLATE: testdata-zenodo. ARCHIVE_NAME: test_data.tar.zst @@ -18,12 +18,25 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - name: Check if release exists + id: check-release + run: | + if gh release view ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID }} >/dev/null 2>&1; then + echo "release_exists=true" >> $GITHUB_OUTPUT + else + echo "release_exists=false" >> $GITHUB_OUTPUT + fi + - name: Release already exists, skipping + if: steps.check_release.outputs.release_exists == 'true' + run: echo "Release $RELEASE_TAG already exists. Skipping workflow." - uses: actions/setup-python@v5 + if: steps.check_release.outputs.release_exists != 'true' with: python-version: "3.10" - name: Install tools + if: steps.check_release.outputs.release_exists != 'true' run: | python -m pip install --upgrade pip python -m pip install zenodo-get @@ -31,6 +44,7 @@ jobs: sudo apt-get install -y zstd - name: Download dataset from Zenodo + if: steps.check_release.outputs.release_exists != 'true' run: | mkdir -p test_data cd test_data @@ -38,10 +52,12 @@ jobs: cd - - name: Create compressed archive + if: steps.check_release.outputs.release_exists != 'true' run: | tar -I zstd -cf "${ARCHIVE_NAME}" test_data/ - name: Publish Release asset (creates or updates a prerelease) + if: steps.check_release.outputs.release_exists != 'true' run: | gh release create \ ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID }} \ diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 2beaeffe9..6d5521d96 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -16,7 +16,12 @@ on: - main - develop jobs: + prepare_test_data: + uses: ./.github/workflows/prepare_test_data.yml + secrets: inherit + test_and_build: + needs: prepare_test_data if: github.event.pull_request.draft == false runs-on: ${{ matrix.os }} strategy: From 6d7825b28d48dc4ea54d27739eeafeb1946dfaa0 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:12:03 +0100 Subject: [PATCH 10/24] Move zenodo record id to workflow --- .github/workflows/prepare_test_data.yml | 14 +++++++++++--- .github/workflows/testing.yml | 4 ++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index 9dd58496d..f515f05a2 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -2,7 +2,15 @@ name: Prepare test data release on: workflow_dispatch: + inputs: + zenodo_record_id: + description: "Zenodo record ID to download the dataset from" + type: string workflow_call: + inputs: + zenodo_record_id: + description: "Zenodo record ID to download the dataset from" + type: string # pull_request: # types: [opened, synchronize, reopened, ready_for_review] # paths: @@ -21,7 +29,7 @@ jobs: - name: Check if release exists id: check-release run: | - if gh release view ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID }} >/dev/null 2>&1; then + if gh release view ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} >/dev/null 2>&1; then echo "release_exists=true" >> $GITHUB_OUTPUT else echo "release_exists=false" >> $GITHUB_OUTPUT @@ -60,9 +68,9 @@ jobs: if: steps.check_release.outputs.release_exists != 'true' run: | gh release create \ - ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID }} \ + ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} \ --prerelease \ - --title ${{ env.RELEASE_TAG_TEMPLATE }}${{ env.ZENODO_RECORD_ID }} \ + --title ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} \ --notes "Automated test data release for Zenodo record ID $ZENODO_RECORD_ID" \ ${{ env.ARCHIVE_NAME }} env: diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 6d5521d96..51a2144ff 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -1,6 +1,7 @@ name: Build and Test env: ZENODO_RECORD_ID: 17423608 + on: push: branches: @@ -15,10 +16,13 @@ on: branches: - main - develop + jobs: prepare_test_data: uses: ./.github/workflows/prepare_test_data.yml secrets: inherit + with: + zenodo_record_id: ${{ env.ZENODO_RECORD_ID }} test_and_build: needs: prepare_test_data From 2131ed8b5e2142adfeb8783f1335a8389c3a0336 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:18:18 +0100 Subject: [PATCH 11/24] Fix access to env --- .github/workflows/testing.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 51a2144ff..09c6cc338 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -18,11 +18,16 @@ on: - develop jobs: + constants: + runs-on: ubuntu-latest + steps: + - run: echo "ZENODO_RECORD_ID=${{ env.ZENODO_RECORD_ID }}" >> $GITHUB_OUTPUT prepare_test_data: + needs: constants uses: ./.github/workflows/prepare_test_data.yml secrets: inherit with: - zenodo_record_id: ${{ env.ZENODO_RECORD_ID }} + zenodo_record_id: ${{ needs.constants.outputs.ZENODO_RECORD_ID }} test_and_build: needs: prepare_test_data From b5bb57dbe244230b68e62c1161363d9fee293ea0 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:21:57 +0100 Subject: [PATCH 12/24] Hard-code record ID --- .github/workflows/testing.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 09c6cc338..1efd0d7de 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -27,7 +27,7 @@ jobs: uses: ./.github/workflows/prepare_test_data.yml secrets: inherit with: - zenodo_record_id: ${{ needs.constants.outputs.ZENODO_RECORD_ID }} + zenodo_record_id: 17423608 test_and_build: needs: prepare_test_data From 41700b897a57abd232b1a494c78cbc3381cc091b Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:25:39 +0100 Subject: [PATCH 13/24] Fix release tag template --- .github/workflows/prepare_test_data.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index f515f05a2..12015e6fe 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -17,7 +17,7 @@ on: # - .github/workflows/prepare_test_data.yml env: - RELEASE_TAG_TEMPLATE: testdata-zenodo. + RELEASE_TAG_TEMPLATE: testdata_zenodo. ARCHIVE_NAME: test_data.tar.zst jobs: From e9759b2ddef9c2826432ecb40b043da30fea02de Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:27:46 +0100 Subject: [PATCH 14/24] Check output --- .github/workflows/prepare_test_data.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index 12015e6fe..c38b5d406 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -29,6 +29,7 @@ jobs: - name: Check if release exists id: check-release run: | + gh release view ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} if gh release view ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} >/dev/null 2>&1; then echo "release_exists=true" >> $GITHUB_OUTPUT else From 02e75eb48d7a9ccb5ca4f47e0683ddd8dc9bd43a Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:28:40 +0100 Subject: [PATCH 15/24] Add GitHub token --- .github/workflows/prepare_test_data.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index c38b5d406..01bab1faf 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -24,6 +24,8 @@ jobs: build-and-release: name: Download and publish test data runs-on: ubuntu-latest + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - uses: actions/checkout@v4 - name: Check if release exists From ef3739befdf81993be368d30ad766758f0d2086e Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:32:08 +0100 Subject: [PATCH 16/24] Fix release name --- .github/workflows/prepare_test_data.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index 01bab1faf..123efff6a 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -29,7 +29,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Check if release exists - id: check-release + id: checkrelease run: | gh release view ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} if gh release view ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} >/dev/null 2>&1; then @@ -38,16 +38,16 @@ jobs: echo "release_exists=false" >> $GITHUB_OUTPUT fi - name: Release already exists, skipping - if: steps.check_release.outputs.release_exists == 'true' + if: steps.checkrelease.outputs.release_exists == 'true' run: echo "Release $RELEASE_TAG already exists. Skipping workflow." - uses: actions/setup-python@v5 - if: steps.check_release.outputs.release_exists != 'true' + if: steps.checkrelease.outputs.release_exists != 'true' with: python-version: "3.10" - name: Install tools - if: steps.check_release.outputs.release_exists != 'true' + if: steps.checkrelease.outputs.release_exists != 'true' run: | python -m pip install --upgrade pip python -m pip install zenodo-get @@ -55,7 +55,7 @@ jobs: sudo apt-get install -y zstd - name: Download dataset from Zenodo - if: steps.check_release.outputs.release_exists != 'true' + if: steps.checkrelease.outputs.release_exists != 'true' run: | mkdir -p test_data cd test_data @@ -63,12 +63,12 @@ jobs: cd - - name: Create compressed archive - if: steps.check_release.outputs.release_exists != 'true' + if: steps.checkrelease.outputs.release_exists != 'true' run: | tar -I zstd -cf "${ARCHIVE_NAME}" test_data/ - name: Publish Release asset (creates or updates a prerelease) - if: steps.check_release.outputs.release_exists != 'true' + if: steps.checkrelease.outputs.release_exists != 'true' run: | gh release create \ ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} \ From 3d5a0d3417a3a2bafc70e6a20e36927b351794d4 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:34:02 +0100 Subject: [PATCH 17/24] Fix echo --- .github/workflows/prepare_test_data.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index 123efff6a..4f6ffbbb3 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -39,7 +39,7 @@ jobs: fi - name: Release already exists, skipping if: steps.checkrelease.outputs.release_exists == 'true' - run: echo "Release $RELEASE_TAG already exists. Skipping workflow." + run: echo "Release ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} already exists. Skipping workflow." - uses: actions/setup-python@v5 if: steps.checkrelease.outputs.release_exists != 'true' From 2631c8be1efa4913c01fcc772fe88d834fdd7795 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:34:11 +0100 Subject: [PATCH 18/24] Fix variable record id --- .github/workflows/testing.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 1efd0d7de..c79950903 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -20,14 +20,17 @@ on: jobs: constants: runs-on: ubuntu-latest + outputs: + ZENODO_RECORD_ID: ${{ steps.output_env.outputs.ZENODO_RECORD_ID }} steps: - - run: echo "ZENODO_RECORD_ID=${{ env.ZENODO_RECORD_ID }}" >> $GITHUB_OUTPUT + - id: output_env + run: echo "ZENODO_RECORD_ID=${{ env.ZENODO_RECORD_ID }}" >> $GITHUB_OUTPUT prepare_test_data: needs: constants uses: ./.github/workflows/prepare_test_data.yml secrets: inherit with: - zenodo_record_id: 17423608 + zenodo_record_id: ${{ needs.constants.outputs.ZENODO_RECORD_ID }} test_and_build: needs: prepare_test_data From 19c0a11e6468ec83f4884a644064158423b39e12 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:36:17 +0100 Subject: [PATCH 19/24] Remove install zstd --- .github/workflows/testing.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index c79950903..cdc69c547 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -43,10 +43,6 @@ jobs: python-version: ["3.10"] name: Test and build for ${{ matrix.python-version }}, ${{ matrix.os }} steps: - - name: Install zstd - run: | - sudo apt-get update - sudo apt-get install -y zstd - uses: actions/checkout@v4 - uses: ./.github/actions/install_eitprocessing with: From 47a0373e40327a63bdceb73bff5ceacbdd53532f Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:37:50 +0100 Subject: [PATCH 20/24] Add names --- .github/workflows/testing.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index cdc69c547..48a04a4c7 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -19,6 +19,7 @@ on: jobs: constants: + name: Set constants runs-on: ubuntu-latest outputs: ZENODO_RECORD_ID: ${{ steps.output_env.outputs.ZENODO_RECORD_ID }} @@ -26,6 +27,7 @@ jobs: - id: output_env run: echo "ZENODO_RECORD_ID=${{ env.ZENODO_RECORD_ID }}" >> $GITHUB_OUTPUT prepare_test_data: + name: Prepare test data needs: constants uses: ./.github/workflows/prepare_test_data.yml secrets: inherit From 347fca8fcd259ca57162ff2de941012a298a390f Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:39:08 +0100 Subject: [PATCH 21/24] Remove superfluous check --- .github/workflows/prepare_test_data.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index 4f6ffbbb3..051885a0f 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -31,7 +31,6 @@ jobs: - name: Check if release exists id: checkrelease run: | - gh release view ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} if gh release view ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} >/dev/null 2>&1; then echo "release_exists=true" >> $GITHUB_OUTPUT else From bf65a2febcf7f4daac86fcf9a1b89bd0d0c90bd9 Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:39:58 +0100 Subject: [PATCH 22/24] Remove isntall zstd --- .github/workflows/prepare_test_data.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index 051885a0f..1e8af47dc 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -50,8 +50,6 @@ jobs: run: | python -m pip install --upgrade pip python -m pip install zenodo-get - sudo apt-get update - sudo apt-get install -y zstd - name: Download dataset from Zenodo if: steps.checkrelease.outputs.release_exists != 'true' From 427052b7a277466053995a2464b8465109fbdb2b Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:40:53 +0100 Subject: [PATCH 23/24] Fix reference to record id --- .github/workflows/prepare_test_data.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index 1e8af47dc..e28e25ab9 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -56,7 +56,7 @@ jobs: run: | mkdir -p test_data cd test_data - zenodo_get $ZENODO_RECORD_ID + zenodo_get ${{ inputs.zenodo_record_id }} cd - - name: Create compressed archive @@ -71,7 +71,7 @@ jobs: ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} \ --prerelease \ --title ${{ env.RELEASE_TAG_TEMPLATE }}${{ inputs.zenodo_record_id }} \ - --notes "Automated test data release for Zenodo record ID $ZENODO_RECORD_ID" \ + --notes "Automated test data release for Zenodo record ID ${{ inputs.zenodo_record_id }}" \ ${{ env.ARCHIVE_NAME }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From ed980ff91175e6c93aaa2e34030d99ad93a8a0cd Mon Sep 17 00:00:00 2001 From: Peter Somhorst Date: Fri, 14 Nov 2025 15:56:40 +0100 Subject: [PATCH 24/24] Replace general token with PAT token --- .github/workflows/prepare_test_data.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/prepare_test_data.yml b/.github/workflows/prepare_test_data.yml index e28e25ab9..bf7f85407 100644 --- a/.github/workflows/prepare_test_data.yml +++ b/.github/workflows/prepare_test_data.yml @@ -74,4 +74,4 @@ jobs: --notes "Automated test data release for Zenodo record ID ${{ inputs.zenodo_record_id }}" \ ${{ env.ARCHIVE_NAME }} env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GH_PAT }}