File tree Expand file tree Collapse file tree 1 file changed +47
-0
lines changed
Expand file tree Collapse file tree 1 file changed +47
-0
lines changed Original file line number Diff line number Diff line change 1+ name : Close Pull Requests
2+
3+ on :
4+ push :
5+ branches :
6+ - ' test-close-prs'
7+
8+ jobs :
9+ close-prs :
10+ name : Close Pull Requests on Push
11+ runs-on : ubuntu-latest
12+
13+ steps :
14+ - name : Checkout repository
15+ uses : actions/checkout@v3
16+
17+ - name : Parse commit message
18+ id : parse-commit
19+ run : |
20+ COMMIT_MESSAGE="${{ github.event.head_commit.message }}"
21+ FIXES_LIST=$(echo "$COMMIT_MESSAGE" | grep -oP '(?<=Fixes )#\d+(, #\d+)*' | grep -oP '\d+')
22+ echo "fixes_list=$FIXES_LIST" >> $GITHUB_OUTPUT
23+
24+ - name : Print fixes list for debugging
25+ run : |
26+ echo "Fixes list: ${{ steps.parse-commit.outputs.fixes_list }}"
27+
28+ - name : Find pull requests
29+ id : pr-results
30+ uses : actions/github-script@v7
31+ with :
32+ script : |
33+ const fixesList = "${{ steps.parse-commit.outputs.fixes_list }}".split('\n');
34+ let relatedPRs = [];
35+
36+ for (const value of fixesList) {
37+ const query = `is:pr is:open repo:WordPress/wordpress-develop in:body https://core.trac.wordpress.org/ticket/${value}`;
38+ const result = await github.rest.search.issuesAndPullRequests({ q: query });
39+ relatedPRs = relatedPRs.concat(result.data.items.map(pr => ({
40+ owner: 'wordpress',
41+ repo: pr.repository_url.split('/').slice(-2).join('/'),
42+ number: pr.number
43+ })));
44+ }
45+
46+ console.log(relatedPRs);
47+ return relatedPRs;
You can’t perform that action at this time.
0 commit comments