From 006dc2144654529c6c2a8709ae81eeb1f566d566 Mon Sep 17 00:00:00 2001 From: Hawkynt Date: Wed, 2 Sep 2026 19:09:15 +0200 Subject: [PATCH] + a fast tier on every working-branch push A push only regenerated derived files; the first real feedback came from opening a pull request, which runs the whole matrix. That makes the expensive tier the thing people use to find out whether their code compiles, so it runs ten times per change instead of once. smoke.yml calls the shared dotnet-smoke.yml: one OS, fast tests only, no coverage, no package-README check, twenty-minute cap. A test is in that tier unless it says otherwise -- Slow, or one of the categories that are slow by nature, takes it out. Opting out defers a test rather than skipping it: the pull request still runs everything. --- .github/workflows/smoke.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 .github/workflows/smoke.yml diff --git a/.github/workflows/smoke.yml b/.github/workflows/smoke.yml new file mode 100644 index 0000000..45bc61e --- /dev/null +++ b/.github/workflows/smoke.yml @@ -0,0 +1,20 @@ +name: Smoke + +# The fast tier, on every push to a working branch: one OS, fast tests only, no coverage, no +# package-README check. It answers "is what I just pushed broken?" in minutes; ci.yml on the pull +# request is the gate that runs every OS and every category. +# +# Never on main: that branch takes changes through pull requests, which already ran the full gate. +on: + push: + branches-ignore: [main, master] + workflow_dispatch: {} + +jobs: + smoke: + uses: Hawkynt/RepositoryTemplate/.github/workflows/dotnet-smoke.yml@v1 + with: + solution: PhotoManager.slnx + test-target: PhotoManager.Tests/PhotoManager.Tests.csproj + dotnet-version: '8.x' + clone-siblings: '[{"repository":"Hawkynt/CompressionWorkbench","path":"../CompressionWorkbench"}]'