mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-13 05:20: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'
|
- 'CMakeLists.txt'
|
||||||
- 'vcpkg.json'
|
- 'vcpkg.json'
|
||||||
- 'vcpkg' # needed to match submodule bumps (gitlink)
|
- '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)
|
# Cancel earlier, unfinished runs of this workflow on the same branch (unless on tag --> release)
|
||||||
concurrency:
|
concurrency:
|
||||||
|
|
@ -152,6 +157,7 @@ jobs:
|
||||||
|
|
||||||
- distro: Debian
|
- distro: Debian
|
||||||
version: 12
|
version: 12
|
||||||
|
nightly: yes # previous stable, still covered by the nightly
|
||||||
|
|
||||||
package: DEB
|
package: DEB
|
||||||
test: skip # Running tests on all distros is superfluous
|
test: skip # Running tests on all distros is superfluous
|
||||||
|
|
@ -163,6 +169,7 @@ jobs:
|
||||||
|
|
||||||
- distro: Fedora
|
- distro: Fedora
|
||||||
version: 43
|
version: 43
|
||||||
|
nightly: yes # previous release, still covered by the nightly
|
||||||
|
|
||||||
package: RPM
|
package: RPM
|
||||||
test: skip # Running tests on all distros is superfluous
|
test: skip # Running tests on all distros is superfluous
|
||||||
|
|
@ -179,6 +186,7 @@ jobs:
|
||||||
|
|
||||||
- distro: Ubuntu
|
- distro: Ubuntu
|
||||||
version: 24.04
|
version: 24.04
|
||||||
|
nightly: yes # previous LTS, still covered by the nightly
|
||||||
|
|
||||||
package: DEB
|
package: DEB
|
||||||
test: skip # Running tests on all distros is superfluous
|
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) || '' }}
|
name: ${{ matrix.distro }} ${{ matrix.version }}${{ matrix.variant && format(' {0}', matrix.variant) || '' }}
|
||||||
needs: configure
|
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
|
runs-on: ubuntu-latest # https://github.com/actions/runner-images
|
||||||
continue-on-error: ${{ matrix.allow-failure == 'yes' }}
|
continue-on-error: ${{ matrix.allow-failure == 'yes' }}
|
||||||
timeout-minutes: 70
|
timeout-minutes: 70
|
||||||
|
|
@ -453,6 +464,7 @@ jobs:
|
||||||
target: 13 # EOL 2025-09-15
|
target: 13 # EOL 2025-09-15
|
||||||
runner: macos-15-intel # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md
|
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
|
# 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
|
ccache_eviction_age: 7d
|
||||||
cmake_generator: Ninja
|
cmake_generator: Ninja
|
||||||
|
|
@ -543,6 +555,7 @@ jobs:
|
||||||
|
|
||||||
name: ${{ matrix.os }} ${{ matrix.target }}${{ matrix.soc == 'Intel' && ' Intel' || '' }}${{ matrix.type == 'Debug' && ' Debug' || '' }}
|
name: ${{ matrix.os }} ${{ matrix.target }}${{ matrix.soc == 'Intel' && ' Intel' || '' }}${{ matrix.type == 'Debug' && ' Debug' || '' }}
|
||||||
needs: [configure, vcpkg-baseline]
|
needs: [configure, vcpkg-baseline]
|
||||||
|
if: matrix.nightly != 'yes' || github.event_name == 'schedule' || github.ref_type == 'tag'
|
||||||
runs-on: ${{ matrix.runner }}
|
runs-on: ${{ matrix.runner }}
|
||||||
timeout-minutes: 100
|
timeout-minutes: 100
|
||||||
env:
|
env:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue