github: Add rebase label on PR if it's > 50 commits behind

The idea is to catch some PRs and rerun them in CI to avoid merging PRs that
are based on the stale base branch and causes issues afterwards.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
This commit is contained in:
Donatas Abraitis 2023-05-03 23:17:58 +03:00
parent cf19cff64f
commit c9f073d1de
1 changed files with 28 additions and 0 deletions

28
.github/workflows/behind-base.yml vendored Normal file
View File

@ -0,0 +1,28 @@
name: Add rebase label if the branch is > 50 commits behind
on:
pull_request_target:
types: [synchronize, opened, reopened, labeled, unlabeled]
jobs:
behind:
if: github.repository == 'frrouting/frr'
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- name: Checkout
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Set custom variables
id: vars
run: |
echo "behind_by=$(git log --oneline origin/${{ github.base_ref }} ^${{ github.event.pull_request.head.sha }} | wc -l)" >> $GITHUB_OUTPUT
- name: Add rebase label if needed
if: ${{ steps.vars.outputs.behind_by > 50 }}
uses: actions-ecosystem/action-add-labels@v1
with:
labels: rebase