github: Clarify release notes description

Error out if the release notes section is filled for PRs without the
`impact/` label.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
This commit is contained in:
Paweł Gronowski
2025-01-29 18:21:24 +01:00
parent e273a5635a
commit 79b0e89628
2 changed files with 22 additions and 11 deletions

View File

@@ -19,11 +19,14 @@ Please provide the following information:
**- How to verify it** **- How to verify it**
**- Description for the changelog** **- Human readable description for the release notes**
<!-- <!--
Write a short (one line) summary that describes the changes in this Write a short (one line) summary that describes the changes in this
pull request for inclusion in the changelog. pull request for inclusion in the changelog.
It must be placed inside the below triple backticks section: It must be placed inside the below triple backticks section.
NOTE: Only fill this section if changes introduced in this PR are user-facing.
The PR must have a relevant impact/ label.
--> -->
```markdown changelog ```markdown changelog

View File

@@ -27,10 +27,10 @@ jobs:
run: exit 0 run: exit 0
check-changelog: check-changelog:
if: contains(join(github.event.pull_request.labels.*.name, ','), 'impact/')
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
timeout-minutes: 120 # guardrails timeout for the whole job timeout-minutes: 120 # guardrails timeout for the whole job
env: env:
HAS_IMPACT_LABEL: ${{ contains(join(github.event.pull_request.labels.*.name, ','), 'impact/') }}
PR_BODY: | PR_BODY: |
${{ github.event.pull_request.body }} ${{ github.event.pull_request.body }}
steps: steps:
@@ -42,6 +42,7 @@ jobs:
# Strip empty lines # Strip empty lines
desc=$(echo "$block" | awk NF) desc=$(echo "$block" | awk NF)
if [ "$HAS_IMPACT_LABEL" = "true" ]; then
if [ -z "$desc" ]; then if [ -z "$desc" ]; then
echo "::error::Changelog section is empty. Please provide a description for the changelog." echo "::error::Changelog section is empty. Please provide a description for the changelog."
exit 1 exit 1
@@ -52,6 +53,13 @@ jobs:
echo "::error::Description looks too short: $desc" echo "::error::Description looks too short: $desc"
exit 1 exit 1
fi fi
else
if [ -n "$desc" ]; then
echo "::error::PR has a changelog description, but no changelog label"
echo "::error::Please add the relevant 'impact/' label to the PR or remove the changelog description"
exit 1
fi
fi
echo "This PR will be included in the release notes with the following note:" echo "This PR will be included in the release notes with the following note:"
echo "$desc" echo "$desc"