PureXML/.github/workflows/swift-windows.yml
Mihaela Mihaljevic e096a65193
ci: run Windows only on release tags, not every PR (#329)
Windows runs the full build and test suite and is the slowest CI job
(about 22 minutes), so on every push and PR it adds the most wait for the
least marginal signal on pure-Swift changes. It now triggers only on a v*
tag push (cutting a release) or via workflow_dispatch, keeping per-PR CI
fast. The badge reflects the last release's Windows run. Deviates from the
uniform-trigger convention deliberately, for CI speed.
2026-06-26 11:50:06 +02:00

30 lines
768 B
YAML

name: Swift (Windows)
# Windows runs the full build and test suite but is the slowest CI job, so it
# runs only when cutting a release (a `v*` tag push) or on demand, not on every
# push and PR. This keeps per-PR CI fast; the badge reflects the Windows run as
# of the last release.
on:
push:
tags: ['v*']
workflow_dispatch:
permissions:
contents: read
jobs:
swift-windows:
name: Swift (Windows)
runs-on: windows-2022
timeout-minutes: 45
steps:
- uses: actions/checkout@v6
- name: Install Swift
uses: compnerd/gha-setup-swift@main
with:
swift-version: swift-6.3.2-release
swift-build: 6.3.2-RELEASE
- name: Build and test
shell: pwsh
run: ./scripts/check-windows.ps1