From 8bb87b772821aeb421a7191d7fd96a250751355f Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Mon, 8 Jun 2026 17:01:00 +0200 Subject: [PATCH 1/5] test-packaging.yaml: Omit prerequisite step for jw-pkg Don't build and install jw-pkg official before a jw-pkg test build. jw-pkg should be self-contained enough to be able to build itself. Signed-off-by: Jan Lindemann --- .github/workflows/test-packaging.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test-packaging.yaml b/.github/workflows/test-packaging.yaml index 97ba3b1..31449c5 100644 --- a/.github/workflows/test-packaging.yaml +++ b/.github/workflows/test-packaging.yaml @@ -30,6 +30,7 @@ jobs: - name: Install build prerequisites shell: bash + if: ${{ github.event.repository.name != 'jw-pkg' }} run: | set -euxo pipefail export PROJECTS_DIR_REMOTE_BASE=${{ github.server_url }} From 46b0537e2c680f17693c7d1357c670267282d4f1 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Mon, 8 Jun 2026 17:39:34 +0200 Subject: [PATCH 2/5] test-packaging.yaml: Split up build step into deps, static pre-check and actual buil Signed-off-by: Jan Lindemann --- .github/workflows/test-packaging.yaml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-packaging.yaml b/.github/workflows/test-packaging.yaml index 31449c5..abf6ba0 100644 --- a/.github/workflows/test-packaging.yaml +++ b/.github/workflows/test-packaging.yaml @@ -28,7 +28,7 @@ jobs: working-directory: ${{ github.event.repository.name }} persist-credentials: false - - name: Install build prerequisites + - name: Install jw-pkg from source shell: bash if: ${{ github.event.repository.name != 'jw-pkg' }} run: | @@ -41,6 +41,13 @@ jobs: make -C build-jw-foss pkg-install-release-deps OFFLINE=true make -C build-jw-foss pkg-rebuild-reinstall + - name: Install test dependencies + shell: bash + run: | + set -euxo pipefail + make -C "${{ github.event.repository.name }}" pkg-manager-refresh + make -C "${{ github.event.repository.name }}" pkg-install-testbuild-deps + - name: Run pre-build static code checks shell: bash run: | @@ -51,8 +58,6 @@ jobs: shell: bash run: | set -euxo pipefail - make -C "${{ github.event.repository.name }}" pkg-manager-refresh - make -C "${{ github.event.repository.name }}" pkg-install-testbuild-deps make -C "${{ github.event.repository.name }}" pkg-rebuild - name: Run post-build static code checks From 6c7e2e223efa311564bde8b3461177daf9070850 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Mon, 8 Jun 2026 17:01:00 +0200 Subject: [PATCH 3/5] test-packaging.yaml: Split build step up further - Split build step up further - Dependency installation - Static pre-check - Actual package build - Omit pkg-build installation step for jw-pkg Don't build and install jw-pkg official before a jw-pkg test build. jw-pkg should be self-contained enough to be able to build itself. Signed-off-by: Jan Lindemann test-packaging.yaml: Split up build step into deps, static pre-check and actual buil Signed-off-by: Jan Lindemann --- .github/workflows/test-packaging.yaml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-packaging.yaml b/.github/workflows/test-packaging.yaml index 97ba3b1..98d2299 100644 --- a/.github/workflows/test-packaging.yaml +++ b/.github/workflows/test-packaging.yaml @@ -28,8 +28,9 @@ jobs: working-directory: ${{ github.event.repository.name }} persist-credentials: false - - name: Install build prerequisites + - name: Install jw-pkg from source shell: bash + if: ${{ github.event.repository.name != 'jw-pkg' }} run: | set -euxo pipefail export PROJECTS_DIR_REMOTE_BASE=${{ github.server_url }} @@ -40,6 +41,13 @@ jobs: make -C build-jw-foss pkg-install-release-deps OFFLINE=true make -C build-jw-foss pkg-rebuild-reinstall + - name: Install test-build dependencies + shell: bash + run: | + set -euxo pipefail + make -C "${{ github.event.repository.name }}" pkg-manager-refresh + make -C "${{ github.event.repository.name }}" pkg-install-testbuild-deps + - name: Run pre-build static code checks shell: bash run: | @@ -50,8 +58,6 @@ jobs: shell: bash run: | set -euxo pipefail - make -C "${{ github.event.repository.name }}" pkg-manager-refresh - make -C "${{ github.event.repository.name }}" pkg-install-testbuild-deps make -C "${{ github.event.repository.name }}" pkg-rebuild - name: Run post-build static code checks From 1f607d922f332674c1cc426f4d43ed25c133b9e4 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Thu, 25 Jun 2026 14:50:25 +0200 Subject: [PATCH 4/5] test-packaging.yaml: Add in-tree integration tests Add a post-build step which runs integration tests against the source code repository (as opposed to against the installed package). Signed-off-by: Jan Lindemann --- .github/workflows/test-packaging.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/test-packaging.yaml b/.github/workflows/test-packaging.yaml index 98d2299..55d5210 100644 --- a/.github/workflows/test-packaging.yaml +++ b/.github/workflows/test-packaging.yaml @@ -66,6 +66,12 @@ jobs: set -euxo pipefail make -C "${{ github.event.repository.name }}" check + - name: Run post-build integration tests against repo + shell: bash + run: | + set -euxo pipefail + make -C "${{ github.event.repository.name }}" test + - name: Install package shell: bash run: | From ae673874519c80b33fa3f6a9307287361baa0827 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Thu, 25 Jun 2026 17:22:10 +0200 Subject: [PATCH 5/5] test-packaging.yaml: Add step "Build in repository" Run "make all" in the repository source before packaging and tests. That's the state in-repo tests should find before running, and indeed, as of now some in-repo tests don't run correctly due to missing __init__py files generated during build. Signed-off-by: Jan Lindemann --- .github/workflows/test-packaging.yaml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-packaging.yaml b/.github/workflows/test-packaging.yaml index 55d5210..ea05bad 100644 --- a/.github/workflows/test-packaging.yaml +++ b/.github/workflows/test-packaging.yaml @@ -54,6 +54,12 @@ jobs: set -euxo pipefail make -C "${{ github.event.repository.name }}" check + - name: Build in repository source + shell: bash + run: | + set -euxo pipefail + make -C "${{ github.event.repository.name }}" all + - name: Build package shell: bash run: | @@ -66,7 +72,7 @@ jobs: set -euxo pipefail make -C "${{ github.event.repository.name }}" check - - name: Run post-build integration tests against repo + - name: Run unit + integration tests against repository shell: bash run: | set -euxo pipefail