forked from paritytech/polkadot-sdk
-
Notifications
You must be signed in to change notification settings - Fork 4
136 lines (125 loc) · 4.2 KB
/
check-cargo-check-runtimes.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
name: Check Cargo Check Runtimes
on:
pull_request:
types: [ opened, synchronize, reopened, ready_for_review, labeled ]
# Jobs in this workflow depend on each other, only for limiting peak amount of spawned workers
jobs:
# GitHub Actions allows using 'env' in a container context.
# However, env variables don't work for forks: https://github.com/orgs/community/discussions/44322
# This workaround sets the container image for each job using 'set-image' job output.
set-image:
if: contains(github.event.label.name, 'GHA-migration') || contains(github.event.pull_request.labels.*.name, 'GHA-migration')
runs-on: ubuntu-latest
timeout-minutes: 20
outputs:
IMAGE: ${{ steps.set_image.outputs.IMAGE }}
steps:
- name: Checkout
uses: actions/checkout@v4
- id: set_image
run: cat .github/env >> $GITHUB_OUTPUT
check-runtime-assets:
runs-on: arc-runners-polkadot-sdk-beefy
needs: [set-image]
timeout-minutes: 20
container:
image: ${{ needs.set-image.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: arc-runners-polkadot-sdk-beefy
needs: [check-runtime-assets, set-image]
timeout-minutes: 20
container:
image: ${{ needs.set-image.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: arc-runners-polkadot-sdk-beefy
container:
image: ${{ needs.set-image.outputs.IMAGE }}
needs: [check-runtime-assets, set-image]
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: arc-runners-polkadot-sdk-beefy
container:
image: ${{ needs.set-image.outputs.IMAGE }}
needs: [set-image]
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: arc-runners-polkadot-sdk-beefy
container:
image: ${{ needs.set-image.outputs.IMAGE }}
needs: [check-runtime-collectives, set-image]
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: arc-runners-polkadot-sdk-beefy
container:
image: ${{ needs.set-image.outputs.IMAGE }}
needs: [check-runtime-assets, set-image]
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: arc-runners-polkadot-sdk-beefy
container:
image: ${{ needs.set-image.outputs.IMAGE }}
needs: [check-runtime-starters, set-image]
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
steps:
- run: echo '### Good job! All the tests passed 🚀' >> $GITHUB_STEP_SUMMARY