Skip to content

Commit 9910dbf

Browse files
committed
on push or label-add, it tests if 'Test Matoya' flag is set
on push or label-add, it tests if 'Test Matoya' flag is set
1 parent 966c3e0 commit 9910dbf

File tree

1 file changed

+36
-1
lines changed

1 file changed

+36
-1
lines changed

.github/workflows/tests.yml

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,42 @@
11
name: Tests
22
on:
3+
push:
4+
branches:
5+
- '**'
6+
tags-ignore:
7+
- '**'
38
pull_request:
4-
types: [ labeled, synchronize ]
9+
types: labeled
510
jobs:
11+
label:
12+
name: Find 'Test Matoya' Label
13+
runs-on: ubuntu-latest
14+
outputs:
15+
label_exists: ${{contains(steps.pull_request.outputs.result, 'Test Matoya') || contains(toJson(github.event.label.name), 'Test Matoya')}}
16+
permissions:
17+
id-token: write
18+
contents: read
19+
pull-requests: read
20+
steps:
21+
- name: pull_request
22+
id: pull_request
23+
uses: actions/github-script@v7
24+
with:
25+
script: |
26+
pull_requests = (
27+
await github.rest.repos.listPullRequestsAssociatedWithCommit({
28+
commit_sha: context.sha,
29+
owner: context.repo.owner,
30+
repo: context.repo.repo,
31+
})).data;
32+
if (pull_requests.constructor === Array && pull_requests.length > 0 && "labels" in pull_requests[0])
33+
return pull_requests[0]["labels"];
34+
return "";
635
macos:
736
name: macOS
837
runs-on: macos-latest
38+
needs: label
39+
if: ${{needs.label.outputs.label_exists == 'true'}}
940
permissions:
1041
id-token: write
1142
contents: read
@@ -25,6 +56,8 @@ jobs:
2556
linux:
2657
name: Linux
2758
runs-on: ubuntu-latest
59+
needs: label
60+
if: ${{needs.label.outputs.label_exists == 'true'}}
2861
permissions:
2962
id-token: write
3063
contents: read
@@ -44,6 +77,8 @@ jobs:
4477
windows:
4578
name: ${{ matrix.config.name }}
4679
runs-on: ${{ matrix.config.os }}
80+
needs: label
81+
if: ${{needs.label.outputs.label_exists == 'true'}}
4782
permissions:
4883
id-token: write
4984
contents: read

0 commit comments

Comments
 (0)