Keep GCC compiler warning coverage on pull requests without running the GCC sanitizer configuration that has been timing out in CI. Leave the Clang sanitizer jobs in place for sanitizer coverage.
84 lines
2.7 KiB
YAML
84 lines
2.7 KiB
YAML
name: CI
|
|
|
|
on: [push, pull_request]
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.head_ref || format('{0}-{1}', github.ref, github.run_number) }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
# CI matrix - runs the job in lagom-template.yml with different configurations.
|
|
Lagom:
|
|
if: github.repository == 'LadybirdBrowser/ladybird'
|
|
name: ${{ matrix.os_name }}, ${{ matrix.arch }}, ${{ matrix.build_preset }}, ${{ matrix.toolchain }}
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os_name: ['Linux']
|
|
arch: ['x86_64']
|
|
build_preset: ['Release']
|
|
toolchain: ['GNU']
|
|
clang_plugins: [false]
|
|
runner_labels: ['["blacksmith-16vcpu-ubuntu-2404"]']
|
|
container: [&ci_container '{"image":"ghcr.io/ladybirdbrowser/ladybird-ci:2026.05.4"}']
|
|
|
|
include:
|
|
- os_name: 'Linux'
|
|
arch: 'x86_64'
|
|
build_preset: 'Sanitizer'
|
|
toolchain: 'Clang'
|
|
clang_plugins: true
|
|
runner_labels: '["blacksmith-16vcpu-ubuntu-2404"]'
|
|
container: *ci_container
|
|
|
|
- os_name: 'macOS'
|
|
arch: 'arm64'
|
|
build_preset: 'Sanitizer'
|
|
toolchain: 'Clang'
|
|
clang_plugins: false
|
|
runner_labels: '["macos-15", "self-hosted"]'
|
|
container: 'null'
|
|
|
|
- os_name: 'Linux'
|
|
arch: 'arm64'
|
|
build_preset: 'Sanitizer'
|
|
toolchain: 'Clang'
|
|
clang_plugins: false
|
|
runner_labels: '["blacksmith-16vcpu-ubuntu-2404-arm"]'
|
|
container: *ci_container
|
|
|
|
- os_name: 'Linux'
|
|
arch: 'x86_64'
|
|
build_preset: 'Fuzzers'
|
|
toolchain: 'Clang'
|
|
clang_plugins: false
|
|
runner_labels: '["blacksmith-16vcpu-ubuntu-2404"]'
|
|
container: *ci_container
|
|
|
|
- os_name: 'Linux'
|
|
arch: 'x86_64'
|
|
build_preset: 'All_Debug'
|
|
toolchain: 'Clang'
|
|
clang_plugins: false
|
|
runner_labels: '["blacksmith-16vcpu-ubuntu-2404"]'
|
|
container: *ci_container
|
|
|
|
- os_name: 'Windows'
|
|
arch: 'x86_64'
|
|
build_preset: 'Sanitizer'
|
|
toolchain: 'ClangCL'
|
|
clang_plugins: false
|
|
runner_labels: '["blacksmith-16vcpu-windows-2025"]'
|
|
container: 'null'
|
|
|
|
secrets: inherit
|
|
uses: ./.github/workflows/lagom-template.yml
|
|
with:
|
|
toolchain: ${{ matrix.toolchain }}
|
|
os_name: ${{ matrix.os_name }}
|
|
runner_labels: ${{ matrix.runner_labels }}
|
|
arch: ${{ matrix.arch }}
|
|
build_preset: ${{ matrix.build_preset }}
|
|
clang_plugins: ${{ matrix.clang_plugins }}
|
|
container: ${{ matrix.container }}
|