mirror of
https://github.com/ChrisTitusTech/winutil.git
synced 2024-11-14 22:55:52 -06:00
Fix 'Close Discussion on PR Merge' Workflow (#2423)
* A Fix for 'close-discussion.yml' Workflow * Update Regex for 'Close Discussion on PR Merge' Worflow * Finish last step in 'Close Discussion on PR Merge' Workflow * Remove & Merge the Steps in 'Close Discussion on PR Merge' Workflow * Re-Add Missing Environment Variable * Update Regex for 'Close Discussion on PR Merge' Worflow
This commit is contained in:
parent
fb34c7cbd8
commit
9bc6adf191
32
.github/workflows/close-discussion.yml
vendored
32
.github/workflows/close-discussion.yml
vendored
@ -12,19 +12,27 @@ jobs:
|
|||||||
if: github.event.pull_request.merged == true
|
if: github.event.pull_request.merged == true
|
||||||
run: echo "PR was merged"
|
run: echo "PR was merged"
|
||||||
|
|
||||||
- name: Extract Discussion Number
|
- name: Extract Discussion Number & Close If any Where Found
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
if: github.event.pull_request.merged == true
|
if: github.event.pull_request.merged == true
|
||||||
id: extract-discussion
|
id: extract-discussion
|
||||||
run: |
|
run: |
|
||||||
echo "discussion=$(echo '${{ github.event.pull_request.body }}' | grep -oP '(?<=Resolves #)\d+')" >> $GITHUB_OUTPUT
|
echo '${{ github.event.pull_request.body }}' > pr_body.txt
|
||||||
shell: bash
|
|
||||||
|
|
||||||
- name: Close the discussion
|
discussion_ids_arr=()
|
||||||
if: github.event.pull_request.merged == true && steps.extract-discussion.outputs.discussion
|
cat pr_body.txt | grep -i -Po '^\s*(-|\d+\.)?\s*(Resolve(s|d)?)\s*#\d+\s*$|^\s*(-|\d+\.)?\s*(Fix(es|ed)?)\s*#\d+\s*$|^\s*(-|\d+\.)?\s*(Close(s|d)?)\s*#\d+\s*$' | awk -F '#' '{print $2}' > discussion_ids_list.txt
|
||||||
env:
|
while read -r line; do
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
discussion_ids_arr+=("$line")
|
||||||
DISCUSSION_ID: ${{ steps.extract-discussion.outputs.discussion }}
|
done < discussion_ids_list.txt
|
||||||
run: |
|
|
||||||
curl -X PATCH -H "Authorization: token $GITHUB_TOKEN" \
|
number_of_ids=${#discussion_ids_arr[@]}
|
||||||
-d '{"state": "closed"}' \
|
for (( i=0; i<${number_of_ids}; i++ ));
|
||||||
"https://api.github.com/repos/${{ github.repository }}/discussions/${DISCUSSION_ID}"
|
do
|
||||||
|
discussion_id=${discussion_ids_arr[$i]}
|
||||||
|
echo "$discussion_id"
|
||||||
|
curl -X PATCH -H "Authorization: token $GITHUB_TOKEN" \
|
||||||
|
-d '{"state": "closed"}' \
|
||||||
|
'https://api.github.com/repos/${{ github.repository }}/discussions/$discussion_id'
|
||||||
|
done
|
||||||
|
shell: bash
|
||||||
|
Loading…
Reference in New Issue
Block a user