mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-14 19:27:05 -04:00
32 lines
1.2 KiB
YAML
32 lines
1.2 KiB
YAML
# Builds and tests the workspace on FreeBSD, inside a FreeBSD VM on a Linux runner
|
|
# (GitHub has no FreeBSD runners). GPU tests skip themselves when the VM has no adapter.
|
|
name: FreeBSD
|
|
|
|
# The VM build is slow, so it runs nightly on main and on pushes to `release`, not on every push
|
|
# or dependency change: a drifted dependency still shows up within a day, and always before a
|
|
# release ships. PRs that change the FreeBSD packaging itself still run it.
|
|
on:
|
|
schedule:
|
|
- cron: "47 2 * * *"
|
|
push:
|
|
branches: [release]
|
|
pull_request:
|
|
paths:
|
|
- .github/workflows/freebsd.yml
|
|
- packaging/freebsd/**
|
|
- packaging/env.sh
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: freebsd-${{ github.ref }}
|
|
# A push to main doesn't cancel the run in progress (the newest waiting run replaces older ones),
|
|
# so main gets complete runs however often it moves; PR pushes do cancel.
|
|
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
freebsd:
|
|
# Intentionally tracked at @main (not SHA-pinned) so org-wide CI improvements, security fixes, and build optimizations propagate without PR churn across all craftapp repos.
|
|
uses: storytold/craft-common-actions/.github/workflows/freebsd.yml@main |