| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- name: 'Build (All)'
- on:
- push:
- paths-ignore:
- - 'docs/**'
- - '*.md'
- pull_request:
- paths-ignore:
- - 'docs/**'
- - '*.md'
- schedule:
- # ┌────────────── minute (0 - 59)
- # │ ┌───────────── hour (0 - 23)
- # │ │ ┌───────────── day of the month (1 - 31)
- # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)
- # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)
- # │ │ │ │ │
- - cron: '0 18 * * *'
- concurrency:
- group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }}
- cancel-in-progress: true
- jobs:
- controller:
- name: 'Create test plan'
- runs-on: 'ubuntu-latest'
- if: ${{ (github.event_name == 'schedule' && github.repository == 'libsdl-org/sdl') || github.event_name != 'schedule' }}
- outputs:
- platforms-level1: ${{ steps.plan.outputs.platforms-level1 }}
- platforms-others: ${{ steps.plan.outputs.platforms-others }}
- steps:
- - uses: actions/setup-python@main
- with:
- python-version: 3.x
- - uses: actions/checkout@main
- with:
- sparse-checkout: '.github/workflows/create-test-plan.py'
- - name: 'Create plan'
- id: plan
- run: |
- # Adding [sdl-ci-filter GLOB] to the commit message will limit the jobs
- # e.g. [sdl-ci-filter msvc-*]
- EOF=$(openssl rand -hex 32)
- cat >/tmp/commit_message.txt <<$EOF
- ${{ github.event.head_commit.message }}
- $EOF
- python .github/workflows/create-test-plan.py \
- ${{ (github.event_name != 'schedule' && '--priority-only') || '' }} \
- --github-variable-prefix platforms \
- --github-ci \
- --verbose \
- ${{ (github.repository_owner != 'libsdl-org' && '--no-artifact') || '' }} \
- --commit-message-file /tmp/commit_message.txt
- level1:
- needs: [controller]
- uses: './.github/workflows/generic.yml'
- with:
- platforms: ${{ needs.controller.outputs.platforms-level1 }}
- level2:
- needs: [controller, level1]
- uses: './.github/workflows/generic.yml'
- with:
- platforms: ${{ needs.controller.outputs.platforms-others }}
|