Preflight workflow update #2845
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Check Cargo Check Runtimes | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
on: | |
pull_request: | |
types: [opened, synchronize, reopened, ready_for_review] | |
# Jobs in this workflow depend on each other, only for limiting peak amount of spawned workers | |
jobs: | |
preflight: | |
uses: ./.github/workflows/reusable-preflight.yml | |
check-runtime-assets: | |
runs-on: ${{ needs.preflight.outputs.RUNNER }} | |
needs: [preflight] | |
timeout-minutes: 20 | |
container: | |
image: ${{ needs.preflight.outputs.IMAGE }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Run cargo check | |
uses: ./.github/actions/cargo-check-runtimes | |
with: | |
root: cumulus/parachains/runtimes/assets | |
check-runtime-collectives: | |
runs-on: ${{ needs.preflight.outputs.RUNNER }} | |
needs: [check-runtime-assets, preflight] | |
timeout-minutes: 20 | |
container: | |
image: ${{ needs.preflight.outputs.IMAGE }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Run cargo check | |
uses: ./.github/actions/cargo-check-runtimes | |
with: | |
root: cumulus/parachains/runtimes/collectives | |
check-runtime-coretime: | |
runs-on: ${{ needs.preflight.outputs.RUNNER }} | |
container: | |
image: ${{ needs.preflight.outputs.IMAGE }} | |
needs: [check-runtime-assets, preflight] | |
timeout-minutes: 20 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Run cargo check | |
uses: ./.github/actions/cargo-check-runtimes | |
with: | |
root: cumulus/parachains/runtimes/coretime | |
check-runtime-bridge-hubs: | |
runs-on: ${{ needs.preflight.outputs.RUNNER }} | |
container: | |
image: ${{ needs.preflight.outputs.IMAGE }} | |
needs: [preflight] | |
timeout-minutes: 20 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Run cargo check | |
uses: ./.github/actions/cargo-check-runtimes | |
with: | |
root: cumulus/parachains/runtimes/bridge-hubs | |
check-runtime-contracts: | |
runs-on: ${{ needs.preflight.outputs.RUNNER }} | |
container: | |
image: ${{ needs.preflight.outputs.IMAGE }} | |
needs: [check-runtime-collectives, preflight] | |
timeout-minutes: 20 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Run cargo check | |
uses: ./.github/actions/cargo-check-runtimes | |
with: | |
root: cumulus/parachains/runtimes/contracts | |
check-runtime-starters: | |
runs-on: ${{ needs.preflight.outputs.RUNNER }} | |
container: | |
image: ${{ needs.preflight.outputs.IMAGE }} | |
needs: [check-runtime-assets, preflight] | |
timeout-minutes: 20 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Run cargo check | |
uses: ./.github/actions/cargo-check-runtimes | |
with: | |
root: cumulus/parachains/runtimes/starters | |
check-runtime-testing: | |
runs-on: ${{ needs.preflight.outputs.RUNNER }} | |
container: | |
image: ${{ needs.preflight.outputs.IMAGE }} | |
needs: [check-runtime-starters, preflight] | |
timeout-minutes: 20 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Run cargo check | |
uses: ./.github/actions/cargo-check-runtimes | |
with: | |
root: cumulus/parachains/runtimes/testing | |
confirm-required-jobs-passed: | |
runs-on: ubuntu-latest | |
name: All check-runtime-* tests passed | |
# If any new job gets added, be sure to add it to this array | |
needs: | |
- check-runtime-assets | |
- check-runtime-collectives | |
- check-runtime-coretime | |
- check-runtime-bridge-hubs | |
- check-runtime-contracts | |
- check-runtime-starters | |
- check-runtime-testing | |
if: always() && !cancelled() | |
steps: | |
- run: | | |
tee resultfile <<< '${{ toJSON(needs) }}' | |
FAILURES=$(cat resultfile | grep '"result": "failure"' | wc -l) | |
if [ $FAILURES -gt 0 ]; then | |
echo "### At least one required job failed ❌" >> $GITHUB_STEP_SUMMARY | |
exit 1 | |
else | |
echo '### Good job! All the required jobs passed 🚀' >> $GITHUB_STEP_SUMMARY | |
fi |