44
44
# ]
45
45
46
46
jobs :
47
- generate_matrix :
47
+ matrix :
48
48
name : Generate Platform List
49
49
runs-on : ubuntu-latest
50
50
outputs :
@@ -65,11 +65,11 @@ jobs:
65
65
build :
66
66
name : Build
67
67
runs-on : ubuntu-latest
68
- needs : generate_matrix
68
+ needs : matrix
69
69
strategy :
70
70
fail-fast : false
71
71
matrix :
72
- platform : ${{ fromJSON(needs.generate_matrix .outputs.platform_list) }}
72
+ platform : ${{ fromJSON(needs.matrix .outputs.platform_list) }}
73
73
74
74
steps :
75
75
- name : Checkout Repository
@@ -131,7 +131,7 @@ jobs:
131
131
132
132
manifest :
133
133
name : Create and Push Manifest Lists
134
- needs : build
134
+ needs : [matrix, build]
135
135
# Only run when master or when tagging a version
136
136
if : (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/')) && github.event_name != 'pull_request'
137
137
runs-on : ubuntu-latest
@@ -144,8 +144,10 @@ jobs:
144
144
145
145
- name : Create and Push Manifest Lists
146
146
run : |
147
+ set -exuo pipefail
148
+
147
149
tags=("deps" "dev" "runtime" "cli")
148
- platforms=($(echo '${{ needs.generate_matrix .outputs.platform_list }}' | jq -r '.[]'))
150
+ platforms=($(echo '${{ needs.matrix .outputs.platform_list }}' | jq -r '.[]'))
149
151
150
152
echo "Create all the tags by platform"
151
153
@@ -189,14 +191,16 @@ jobs:
189
191
190
192
cleanup :
191
193
name : Cleanup Platform Specific Tags
192
- needs : [build, manifest]
194
+ needs : [matrix, build, manifest]
193
195
runs-on : ubuntu-latest
194
196
if : always()
195
197
steps :
196
198
- name : Remove Platform-Specific Tags
197
199
run : |
200
+ set -exuo pipefail
201
+
198
202
tags=("deps" "dev" "runtime" "cli")
199
- platforms=($(echo '${{ needs.generate_matrix .outputs.platform_list }}' | jq -r '.[]'))
203
+ platforms=($(echo '${{ needs.matrix .outputs.platform_list }}' | jq -r '.[]'))
200
204
201
205
for tag in "${tags[@]}"; do
202
206
for platform in "${platforms[@]}"; do
0 commit comments