build: add new GH actions to require release note updates

In this commit, we add a simple bash script to parse out the current PR
number from an environment variable in the GH actions context, and use
that to check to see if the PR has been referenced in the release notes
or not. This isn't 100% fool proof, but it should catch most of the
common cases.
This commit is contained in:
Olaoluwa Osuntokun 2021-07-14 16:54:09 -07:00
parent 8acbe177fa
commit 6570749f7f
No known key found for this signature in database
GPG Key ID: 3BBD59E99B280306
2 changed files with 27 additions and 0 deletions

@ -258,3 +258,16 @@ jobs:
- name: ensure dependences at correct version
run: if ! grep -q "${{ matrix.pinned_dep }}" go.mod; then echo dependency ${{ matrix.pinned_dep }} should not be altered ; exit 1 ; fi
########################
# check PR updates release notes
########################
milestone-check:
name: check release notes updated
runs-on: ubuntu-latest
steps:
- name: git checkout
uses: actions/checkout@v2
- name: release notes check
run: scripts/check-release-notes.sh

14
scripts/check-release-notes.sh Executable file

@ -0,0 +1,14 @@
#!/bin/bash
set -e
# Extract the PR number which is stored in the $GITHUB_REF env variable. The
# format of the string stored in the variable is: refs/pull/:PRNUMBER/merge.
PR_NUMBER=$(echo $GITHUB_REF | awk 'BEGIN { FS = "/" } ; { print $3 }')
# Ensure that the PR number at least shows up in the release notes folder under
# one of the contained milestones.
if ! grep -r -q "lightningnetwork/lnd/pull/$PR_NUMBER" docs/release-notes; then
echo "PR $PR_NUMBER didn't update release notes"
exit 1
fi