Skip to content

chore: changeset check #19

chore: changeset check

chore: changeset check #19

Workflow file for this run

name: PR Changeset Check
on:
pull_request:
types:
- opened
- synchronize
jobs:
check_changeset:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v2
- name: Changed Files
id: changed-files
uses: tj-actions/changed-files@v41.0.1
with:
files: |
.changeset/**.md
- name: Check for major changes
id: check_changeset
env:
ALL_CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }}
run: |
files=$(echo "$ALL_CHANGED_FILES" | grep ".changeset")
echo "文件列表:$files"
major_changes=$(grep -c "major" $files)
echo "$major_changes major changes found."
if [ "$major_changes" -gt 0 ]; then
comment="@${{ github.actor }}, 本次 PR 的更改包含 major 变更,请确认是否符合预期。<br /> \`\`\`md\n$(grep "major" $files)\n\`\`\`<!-- AUTO_CHANGESET_CHECK_HOOK -->"
echo "comment=$comment" >> $GITHUB_OUTPUT
else
echo "comment=" >> $GITHUB_OUTPUT
fi
- name: update status comment
if: ${{ steps.check_changeset.outputs.comment != '' }}
uses: actions-cool/maintain-one-comment@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}
body: ${{ steps.check_changeset.outputs.comment }}
body-include: '<!-- AUTO_CHANGESET_CHECK_HOOK -->'
number: ${{ github.event.pull_request.number }}
- name: Delete comment
if: ${{ steps.check_changeset.outputs.comment == '' }}
uses: actions-cool/maintain-one-comment@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}
body-include: '<!-- AUTO_CHANGESET_CHECK_HOOK -->'
number: ${{ github.event.pull_request.number }}
delete: true