From 617947db9367fbb55c489bd1dd53ed97aea2e907 Mon Sep 17 00:00:00 2001 From: Serein Pfeiffer Date: Mon, 5 Oct 2026 09:07:51 +0200 Subject: [PATCH 1/3] Add own keep-alive job to Linux and Windows workflows --- .github/workflows/build_linux.yml | 8 ++++++++ .github/workflows/build_windows.yml | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/.github/workflows/build_linux.yml b/.github/workflows/build_linux.yml index 31ec7a3..c30bdd3 100644 --- a/.github/workflows/build_linux.yml +++ b/.github/workflows/build_linux.yml @@ -74,3 +74,11 @@ jobs: PYTHONPATH=build/gen python src/main.py read PYTHONPATH=build/gen python src/main.py write_boss PYTHONPATH=build/gen python src/main.py read + + keepalive: + if: github.event_name == 'schedule' + runs-on: ubuntu-latest + permissions: + actions: write + steps: + - uses: liskin/gh-workflow-keepalive@v1 diff --git a/.github/workflows/build_windows.yml b/.github/workflows/build_windows.yml index 7fd3830..14bea0c 100644 --- a/.github/workflows/build_windows.yml +++ b/.github/workflows/build_windows.yml @@ -79,3 +79,11 @@ jobs: PYTHONPATH=build/gen python src/main.py write_boss PYTHONPATH=build/gen python src/main.py read shell: bash + + keepalive: + if: github.event_name == 'schedule' + runs-on: ubuntu-latest + permissions: + actions: write + steps: + - uses: liskin/gh-workflow-keepalive@v1 From b6554e34a44d5370aa0cb78cd36dc149b945cab0 Mon Sep 17 00:00:00 2001 From: Serein Pfeiffer Date: Mon, 5 Oct 2026 09:08:02 +0200 Subject: [PATCH 2/3] Fail regeneration step when regenerated sources differ from committed ones --- .github/workflows/build_linux.yml | 3 +++ .github/workflows/build_windows.yml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/.github/workflows/build_linux.yml b/.github/workflows/build_linux.yml index c30bdd3..df3fe74 100644 --- a/.github/workflows/build_linux.yml +++ b/.github/workflows/build_linux.yml @@ -61,6 +61,9 @@ jobs: - name: Check Zserio Python tutorial (sources regeneration) run: | zserio tutorial.zs -python build/gen + zserio tutorial.zs -python src + git add --intent-to-add --all -- src + git diff --exit-code -- src mypy build/gen src/main.py --no-strict-optional PYTHONPATH=. pylint build/gen src/main.py \ --disable=line-too-long,missing-function-docstring,missing-module-docstring \ diff --git a/.github/workflows/build_windows.yml b/.github/workflows/build_windows.yml index 14bea0c..50bc92a 100644 --- a/.github/workflows/build_windows.yml +++ b/.github/workflows/build_windows.yml @@ -64,6 +64,9 @@ jobs: - name: Check Zserio Python tutorial (sources regeneration) run: | zserio tutorial.zs -python build/gen + zserio tutorial.zs -python src + git add --intent-to-add --all -- src + git diff --exit-code -- src mypy build/gen src/main.py --no-strict-optional PYTHONPATH=. pylint build/gen src/main.py \ --disable=line-too-long,missing-function-docstring,missing-module-docstring \ From 60bba3ad4b13f40e1c42666e7907289225e12bbe Mon Sep 17 00:00:00 2001 From: Serein Pfeiffer Date: Mon, 5 Oct 2026 09:10:39 +0200 Subject: [PATCH 3/3] Ignore timestamps when regenerating into src so stale files cannot be skipped --- .github/workflows/build_linux.yml | 2 +- .github/workflows/build_windows.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build_linux.yml b/.github/workflows/build_linux.yml index df3fe74..7f99057 100644 --- a/.github/workflows/build_linux.yml +++ b/.github/workflows/build_linux.yml @@ -61,7 +61,7 @@ jobs: - name: Check Zserio Python tutorial (sources regeneration) run: | zserio tutorial.zs -python build/gen - zserio tutorial.zs -python src + zserio tutorial.zs -python src -ignoreTimestamps git add --intent-to-add --all -- src git diff --exit-code -- src mypy build/gen src/main.py --no-strict-optional diff --git a/.github/workflows/build_windows.yml b/.github/workflows/build_windows.yml index 50bc92a..73b0815 100644 --- a/.github/workflows/build_windows.yml +++ b/.github/workflows/build_windows.yml @@ -64,7 +64,7 @@ jobs: - name: Check Zserio Python tutorial (sources regeneration) run: | zserio tutorial.zs -python build/gen - zserio tutorial.zs -python src + zserio tutorial.zs -python src -ignoreTimestamps git add --intent-to-add --all -- src git diff --exit-code -- src mypy build/gen src/main.py --no-strict-optional