mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-24 10:09:32 -06:00
CI: run the gate through craft-common-actions' shared gate.yml; FreeBSD nightly and on release (#2204)
ci.yml is new: it calls the shared workflow (cached apt packages, nextest, main-only cache saves, Cargo.lock check). FreeBSD runs nightly and on pushes to release instead of on pull requests. Depends on storytold/craft-common-actions#69.
This commit is contained in:
@@ -0,0 +1,27 @@
|
|||||||
|
name: CI
|
||||||
|
|
||||||
|
# Quality gates for every push to main and every pull request (`cargo xtask ci`), through the
|
||||||
|
# suite's shared gate workflow in craft-common-actions.
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [main]
|
||||||
|
pull_request:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
# A newer push to a PR branch cancels its older run; every push to main runs to the end.
|
||||||
|
concurrency:
|
||||||
|
group: ci-${{ github.event_name == 'pull_request' && github.ref || github.run_id }}
|
||||||
|
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
gate:
|
||||||
|
# Tracks @main so suite-wide CI fixes reach every app without a PR in each repository.
|
||||||
|
uses: storytold/craft-common-actions/.github/workflows/gate.yml@main
|
||||||
|
with:
|
||||||
|
packages: >-
|
||||||
|
pkg-config libxkbcommon-dev libwayland-dev libx11-dev libxcb1-dev libxcursor-dev
|
||||||
|
libxrandr-dev libxi-dev libfontconfig1-dev libfreetype-dev mesa-vulkan-drivers
|
||||||
|
libgl1-mesa-dev libasound2-dev
|
||||||
@@ -2,12 +2,10 @@
|
|||||||
# (GitHub has no FreeBSD runners). GPU tests skip themselves when the VM has no adapter.
|
# (GitHub has no FreeBSD runners). GPU tests skip themselves when the VM has no adapter.
|
||||||
name: FreeBSD
|
name: FreeBSD
|
||||||
|
|
||||||
# The VM build is slow, so it runs nightly on main and on pushes to `release`, not on every push
|
# The VM build is slow, so it runs nightly on main and on pushes to `release`, not on every pull
|
||||||
# or dependency change: a drifted dependency still shows up within a day, and always before a
|
# request: a drifted dependency still shows up within a day, and always before a release ships.
|
||||||
# release ships. PRs that change the FreeBSD packaging itself still run it.
|
# PRs that change the FreeBSD workflow or packaging itself still run it.
|
||||||
on:
|
on:
|
||||||
schedule:
|
|
||||||
- cron: "47 2 * * *"
|
|
||||||
push:
|
push:
|
||||||
branches: [release]
|
branches: [release]
|
||||||
pull_request:
|
pull_request:
|
||||||
@@ -15,6 +13,8 @@ on:
|
|||||||
- .github/workflows/freebsd.yml
|
- .github/workflows/freebsd.yml
|
||||||
- packaging/freebsd/**
|
- packaging/freebsd/**
|
||||||
- packaging/env.sh
|
- packaging/env.sh
|
||||||
|
schedule:
|
||||||
|
- cron: "47 2 * * *"
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
|
|||||||
Reference in New Issue
Block a user