9
9
- ready_for_review
10
10
paths :
11
11
- ' **.rs'
12
+ workflow_dispatch :
13
+ inputs :
14
+ ignore_timeout :
15
+ description : " Ignore mutants timeout limit"
16
+ required : false
17
+ type : choice
18
+ options :
19
+ - true
20
+ # - false
21
+ default : ' true'
12
22
13
23
concurrency :
14
24
group : pr-differences-${{ github.head_ref || github.ref || github.run_id }}
15
25
# Always cancel duplicate jobs
16
26
cancel-in-progress : true
17
27
18
28
jobs :
29
+ check-right-permissions :
30
+ name : Check Right Permissions
31
+ runs-on : ubuntu-latest
32
+
33
+ steps :
34
+ - name : Check Right Permissions To Trigger This
35
+ id : check_right_permissions
36
+ uses : stacks-network/actions/team-membership@feat/mutation-testing
37
+ with :
38
+ username : ${{ github.actor }}
39
+ team : ' Blockchain Team'
40
+ GITHUB_TOKEN : ${{ secrets.GH_TOKEN }}
41
+
42
+ - name : Fail if the user does not have the right permissions
43
+ if : ${{ inputs.ignore_timeout == true && steps.check_right_permissions.outputs.is_team_member != 'true' }}
44
+ run : exit 1
45
+
19
46
# Check and output whether to run big (`stacks-node`/`stackslib`) or small (others) packages with or without shards
20
47
check-big-packages-and-shards :
21
48
name : Check Packages and Shards
49
+ needs : check-right-permissions
22
50
23
51
runs-on : ubuntu-latest
24
52
@@ -30,10 +58,13 @@ jobs:
30
58
run_small_packages : ${{ steps.check_packages_and_shards.outputs.run_small_packages }}
31
59
small_packages_with_shards : ${{ steps.check_packages_and_shards.outputs.small_packages_with_shards }}
32
60
run_stacks_signer : ${{ steps.check_packages_and_shards.outputs.run_stacks_signer }}
61
+ too_many_mutants : ${{ steps.check_packages_and_shards.outputs.too_many_mutants }}
33
62
34
63
steps :
35
64
- id : check_packages_and_shards
36
- uses : stacks-network/actions/stacks-core/mutation-testing/check-packages-and-shards@main
65
+ uses : stacks-network/actions/stacks-core/mutation-testing/check-packages-and-shards@feat/mutation-testing
66
+ with :
67
+ ignore_timeout : ${{ inputs.ignore_timeout }}
37
68
38
69
# Mutation testing - Execute on PR on small packages that have functions modified (normal run, no shards)
39
70
pr-differences-mutants-small-normal :
49
80
50
81
steps :
51
82
- name : Run mutants on diffs
52
- uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@main
83
+ uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@feat/mutation-testing
53
84
with :
54
85
package : ' small'
55
86
72
103
73
104
steps :
74
105
- name : Run mutants on diffs
75
- uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@main
106
+ uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@feat/mutation-testing
76
107
with :
77
108
shard : ${{ matrix.shard }}
78
109
package : ' small'
94
125
env :
95
126
BITCOIND_TEST : 1
96
127
RUST_BACKTRACE : full
97
- uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@main
128
+ uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@feat/mutation-testing
98
129
with :
99
130
package : ' stackslib'
100
131
@@ -120,7 +151,7 @@ jobs:
120
151
env :
121
152
BITCOIND_TEST : 1
122
153
RUST_BACKTRACE : full
123
- uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@main
154
+ uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@feat/mutation-testing
124
155
with :
125
156
shard : ${{ matrix.shard }}
126
157
package : ' stackslib'
@@ -142,7 +173,7 @@ jobs:
142
173
env :
143
174
BITCOIND_TEST : 1
144
175
RUST_BACKTRACE : full
145
- uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@main
176
+ uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@feat/mutation-testing
146
177
with :
147
178
package : ' stacks-node'
148
179
@@ -168,7 +199,7 @@ jobs:
168
199
env :
169
200
BITCOIND_TEST : 1
170
201
RUST_BACKTRACE : full
171
- uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@main
202
+ uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@feat/mutation-testing
172
203
with :
173
204
shard : ${{ matrix.shard }}
174
205
package : ' stacks-node'
@@ -186,7 +217,7 @@ jobs:
186
217
187
218
steps :
188
219
- name : Run mutants on diffs
189
- uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@main
220
+ uses : stacks-network/actions/stacks-core/mutation-testing/pr-differences@feat/mutation-testing
190
221
with :
191
222
package : ' stacks-signer'
192
223
@@ -211,7 +242,7 @@ jobs:
211
242
212
243
steps :
213
244
- name : Output Mutants
214
- uses : stacks-network/actions/stacks-core/mutation-testing/output-pr-mutants@main
245
+ uses : stacks-network/actions/stacks-core/mutation-testing/output-pr-mutants@feat/mutation-testing
215
246
with :
216
247
stackslib_package : ${{ needs.check-big-packages-and-shards.outputs.run_stackslib }}
217
248
shards_for_stackslib_package : ${{ needs.check-big-packages-and-shards.outputs.stackslib_with_shards }}
@@ -220,3 +251,4 @@ jobs:
220
251
small_packages : ${{ needs.check-big-packages-and-shards.outputs.run_small_packages }}
221
252
shards_for_small_packages : ${{ needs.check-big-packages-and-shards.outputs.small_packages_with_shards }}
222
253
stacks_signer : ${{ needs.check-big-packages-and-shards.outputs.run_stacks_signer }}
254
+ too_many_mutants : ${{ needs.check-big-packages-and-shards.outputs.too_many_mutants }}
0 commit comments