mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-13 13:30:00 -08:00
[CI] Cover the legacy distros and the slow macOS runner in a nightly
Every pull request built ten Linux legs and five macOS/Windows legs, including the previous release of each distro and macOS 13 on the Intel runner. Those legs exist to catch a regression for users on an older distribution, which a change being reviewed almost never does, and macOS 13 Intel is the slowest leg of the matrix - 28 minutes against 19 for the rest. They now run in a nightly build of the default branch and on tag builds, which is when a change actually ships. Pull requests keep the current release of each distro, the sanitizer leg and the coverage leg.
This commit is contained in:
parent
3f7aa4ca82
commit
00b33f6960
1 changed files with 13 additions and 0 deletions
13
.github/workflows/desktop-build.yml
vendored
13
.github/workflows/desktop-build.yml
vendored
|
|
@ -33,6 +33,11 @@ on:
|
|||
- 'CMakeLists.txt'
|
||||
- 'vcpkg.json'
|
||||
- 'vcpkg' # needed to match submodule bumps (gitlink)
|
||||
# The legs the pull-request matrix leaves out run here instead, so the legacy distros and
|
||||
# the slow macOS runner stay covered without gating a pull request on them. Tags still
|
||||
# build every leg, because a tag is what ships.
|
||||
schedule:
|
||||
- cron: '23 3 * * *'
|
||||
|
||||
# Cancel earlier, unfinished runs of this workflow on the same branch (unless on tag --> release)
|
||||
concurrency:
|
||||
|
|
@ -152,6 +157,7 @@ jobs:
|
|||
|
||||
- distro: Debian
|
||||
version: 12
|
||||
nightly: yes # previous stable, still covered by the nightly
|
||||
|
||||
package: DEB
|
||||
test: skip # Running tests on all distros is superfluous
|
||||
|
|
@ -163,6 +169,7 @@ jobs:
|
|||
|
||||
- distro: Fedora
|
||||
version: 43
|
||||
nightly: yes # previous release, still covered by the nightly
|
||||
|
||||
package: RPM
|
||||
test: skip # Running tests on all distros is superfluous
|
||||
|
|
@ -179,6 +186,7 @@ jobs:
|
|||
|
||||
- distro: Ubuntu
|
||||
version: 24.04
|
||||
nightly: yes # previous LTS, still covered by the nightly
|
||||
|
||||
package: DEB
|
||||
test: skip # Running tests on all distros is superfluous
|
||||
|
|
@ -219,6 +227,9 @@ jobs:
|
|||
|
||||
name: ${{ matrix.distro }} ${{ matrix.version }}${{ matrix.variant && format(' {0}', matrix.variant) || '' }}
|
||||
needs: configure
|
||||
# A leg marked nightly runs in the nightly and on tags, never on a pull request or a
|
||||
# merge, so nothing that reviews a change waits for a distro nobody is changing for.
|
||||
if: matrix.nightly != 'yes' || github.event_name == 'schedule' || github.ref_type == 'tag'
|
||||
runs-on: ubuntu-latest # https://github.com/actions/runner-images
|
||||
continue-on-error: ${{ matrix.allow-failure == 'yes' }}
|
||||
timeout-minutes: 70
|
||||
|
|
@ -453,6 +464,7 @@ jobs:
|
|||
target: 13 # EOL 2025-09-15
|
||||
runner: macos-15-intel # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md
|
||||
# macos-26-intel is very slow and fails in CPack during DMG config if not increasing Finder timeout
|
||||
nightly: yes # EOL target on the slowest runner: nightly and tags only
|
||||
|
||||
ccache_eviction_age: 7d
|
||||
cmake_generator: Ninja
|
||||
|
|
@ -543,6 +555,7 @@ jobs:
|
|||
|
||||
name: ${{ matrix.os }} ${{ matrix.target }}${{ matrix.soc == 'Intel' && ' Intel' || '' }}${{ matrix.type == 'Debug' && ' Debug' || '' }}
|
||||
needs: [configure, vcpkg-baseline]
|
||||
if: matrix.nightly != 'yes' || github.event_name == 'schedule' || github.ref_type == 'tag'
|
||||
runs-on: ${{ matrix.runner }}
|
||||
timeout-minutes: 100
|
||||
env:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue