-
-
Notifications
You must be signed in to change notification settings - Fork 112
39 lines (33 loc) · 1.31 KB
/
i18n-automerge.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
name: i18n PR auto-merge
on:
pull_request:
types: [opened, synchronize, reopened, labeled]
workflow_dispatch:
jobs:
run-and-merge:
if: contains(github.event.pull_request.labels.*.name, 'i18n') &&
github.event.pull_request.base.ref == 'main' &&
github.event.pull_request.head.ref == 'l10n_main'
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Count lines changed
run: |
# Calculate the total number of lines changed (added, removed, or modified)
LINES_CHANGED=$(git diff --shortstat ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} | awk '{print $4 + $6 + $8}')
echo "Total lines changed: $LINES_CHANGED"
# Check if the number of lines changed is more than 20
if [ "$LINES_CHANGED" -le 20 ]; then
echo "ERROR: 20 or fewer lines have been changed. Failing the check."
exit 1
else
echo "Success: More than 20 lines have been changed."
fi
- name: Merge pull request
if: ${{ success() }}
run: |
PR_NUMBER=$(echo ${{ github.event.pull_request.number }})
gh pr merge $PR_NUMBER --auto --squash
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}