mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-08 17:47:18 +00:00
Originally we used the `paths-ignore` feature to skip the Lagom jobs if no source code was changed. Afterwards, we enabled the 'required checks' feature to prevent merging pull requests that have failing checks. Unfortunately, marking a check as required means it always needs to be successfully executed, even if a conditional caused it to be skipped. By using the `paths-filter` action we were able to add the conditional to the job instead, theoretically causing the 'required checks' feature to start working again for documentation-only changes. As it turns out, not the job, but the steps should get the new conditionals. As that requires adding an `if` to every individual step and the conditional execution has caused enough headaches since its introduction, let's remove it for now and take the unfortunate execution of CI jobs for granted.
49 lines
1.2 KiB
YAML
49 lines
1.2 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'
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os_name: ['Linux']
|
|
os: [ubuntu-24.04]
|
|
fuzzer: ['NO_FUZZ']
|
|
toolchain: ['GNU']
|
|
clang_plugins: [false]
|
|
|
|
include:
|
|
- os_name: 'Linux'
|
|
os: ubuntu-24.04
|
|
fuzzer: 'NO_FUZZ'
|
|
toolchain: 'Clang'
|
|
clang_plugins: true
|
|
|
|
- os_name: 'macOS'
|
|
os: macos-15
|
|
fuzzer: 'NO_FUZZ'
|
|
toolchain: 'Clang'
|
|
clang_plugins: false
|
|
|
|
- os_name: 'Linux'
|
|
os: ubuntu-24.04
|
|
fuzzer: 'FUZZ'
|
|
toolchain: 'Clang'
|
|
clang_plugins: false
|
|
|
|
uses: ./.github/workflows/lagom-template.yml
|
|
with:
|
|
toolchain: ${{ matrix.toolchain }}
|
|
os_name: ${{ matrix.os_name }}
|
|
os: ${{ matrix.os }}
|
|
fuzzer: ${{ matrix.fuzzer }}
|
|
clang_plugins: ${{ matrix.clang_plugins }}
|