mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-22 09:19:03 +00:00
CI: Remove conditional execution based on changed paths
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.
This commit is contained in:
committed by
Jelle Raaijmakers
parent
18b4dc2153
commit
81eb66c6eb
27
.github/workflows/ci.yml
vendored
27
.github/workflows/ci.yml
vendored
@@ -7,34 +7,9 @@ concurrency:
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
# Look at changed paths in the commit or PR to determine whether we need to run the complete CI job. If only
|
||||
# documentation or .md files were changed, we wouldn't need to compile and check anything here.
|
||||
path-changes:
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
pull-requests: read
|
||||
outputs:
|
||||
source_excluding_docs: ${{ steps.filter.outputs.source_excluding_docs }}
|
||||
steps:
|
||||
# Only need a checkout if we're not running as part of a PR
|
||||
- uses: actions/checkout@v4
|
||||
if: github.event_name != 'pull_request'
|
||||
|
||||
# FIXME: change into `dorny/paths-filter@v3` when https://github.com/dorny/paths-filter/pull/226 is merged
|
||||
- uses: petermetz/paths-filter@5ee2f5d4cf5d7bdd998a314a42da307e2ae1639d
|
||||
id: filter
|
||||
with:
|
||||
predicate-quantifier: every # all globs below must match
|
||||
filters: |
|
||||
source_excluding_docs:
|
||||
- '**'
|
||||
- '!Documentation/**'
|
||||
- '!*.md'
|
||||
|
||||
# CI matrix - runs the job in lagom-template.yml with different configurations.
|
||||
Lagom:
|
||||
needs: path-changes
|
||||
if: github.repository == 'LadybirdBrowser/ladybird' && needs.path-changes.outputs.source_excluding_docs == 'true'
|
||||
if: github.repository == 'LadybirdBrowser/ladybird'
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
|
||||
Reference in New Issue
Block a user