mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
This disables Layout 2013 checks when landing PRs. This means that results might get out of sync for 2013, but they should be updated weekly during WPT imports.
71 lines
1.8 KiB
YAML
71 lines
1.8 KiB
YAML
name: Main
|
|
|
|
on:
|
|
push:
|
|
# Run the entire pipeline for 'main' even though the merge queue already runs checks
|
|
# for every change. This just offers an extra layer of testing and covers the case of
|
|
# random force pushes.
|
|
branches: ["main"]
|
|
pull_request:
|
|
types: ['opened', 'synchronize']
|
|
branches: ["**"]
|
|
merge_group:
|
|
types: [checks_requested]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build-win:
|
|
name: Windows
|
|
if: ${{ github.event_name != 'pull_request' }}
|
|
uses: ./.github/workflows/windows.yml
|
|
with:
|
|
unit-tests: true
|
|
secrets: inherit
|
|
|
|
build-mac:
|
|
name: Mac
|
|
if: ${{ github.event_name != 'pull_request' }}
|
|
uses: ./.github/workflows/mac.yml
|
|
with:
|
|
unit-tests: true
|
|
secrets: inherit
|
|
|
|
build-linux:
|
|
name: Linux
|
|
uses: ./.github/workflows/linux.yml
|
|
with:
|
|
unit-tests: true
|
|
wpt-layout: ${{ github.event_name == 'pull_request' && 'none' || '2020' }}
|
|
secrets: inherit
|
|
|
|
build-android:
|
|
name: Android
|
|
if: ${{ github.event_name != 'pull_request' }}
|
|
uses: ./.github/workflows/android.yml
|
|
with:
|
|
profile: "release"
|
|
secrets: inherit
|
|
|
|
build-result:
|
|
name: Result
|
|
runs-on: ubuntu-latest
|
|
if: always()
|
|
# needs all build to detect cancellation
|
|
needs:
|
|
- "build-win"
|
|
- "build-mac"
|
|
- "build-linux"
|
|
- "build-android"
|
|
steps:
|
|
- name: Merge build timings
|
|
uses: actions/upload-artifact/merge@v4
|
|
with:
|
|
name: cargo-timings
|
|
pattern: cargo-timings-*
|
|
delete-merged: true
|
|
- name: Success
|
|
if: ${{ !contains(needs.*.result, 'failure') && !contains(needs.*.result, 'cancelled') }}
|
|
run: exit 0
|
|
- name: Failure
|
|
if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled')
|
|
run: exit 1
|