Skip to content

Commit 352757e

Browse files
committed
Improve release notes creation
* Add pull request template for unified structure * Exclude "empty" lines from template
1 parent 046a303 commit 352757e

3 files changed

Lines changed: 18 additions & 8 deletions

File tree

.github/pull_request_template.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
## Screenshots
2+
3+
## Pre-release tasks
4+
5+
- ...
6+
7+
## Post-release tasks
8+
9+
- ...

.github/workflows/draft-new-release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: draft-new-release.yml
1+
name: Draft new release
22
run-name: Draft release notes for ${{ inputs.release_tag }}
33
permissions:
44
contents: write

script/draft_new_release.sh

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
#!/usr/bin/env bash
22

3-
# This script creates a new draft release and creates a template for the release notes.
3+
# This script creates draft release notes for a release.
44
# It extracts pre-release and post-release tasks from pull request descriptions.
55
# The required syntax is:
6-
# Pre-Release:
6+
# ## Pre-release tasks
77
# - Task 1
88
# - Task 2
9-
# Post-Release:
9+
# ## Post-release tasks
1010
# - Task 3
1111

1212
set -e
@@ -28,8 +28,9 @@ post_release_tasks=""
2828
for pr in $pr_numbers; do
2929
echo "Processing PR #$pr"
3030
pr_body=$(gh pr view "$pr" --json body -q '.body')
31-
pre=$(echo "$pr_body" | sed -n '/Pre-Release:/,/Post-Release:/p' | grep '^[*-]' || true)
32-
post=$(echo "$pr_body" | sed -n '/Post-Release:/,$p' | grep '^[*-]' || true)
31+
32+
pre=$(echo "$pr_body" | sed -n '/## Pre-release tasks/,/## Post-release tasks/p' | grep '^[*-]' | grep -v '^- \.\.\.' || true)
33+
post=$(echo "$pr_body" | sed -n '/## Post-release tasks/,$p' | grep '^[*-]' | grep -v '^- \.\.\.' || true)
3334

3435
if [ -n "$pre" ]; then
3536
pre_release_tasks+="
@@ -50,13 +51,13 @@ release_body="**Full Changelog**: https://github.com/nhsuk/manage-vaccinations-i
5051

5152
if [ -n "$pre_release_tasks" ]; then
5253
release_body+="
53-
## Pre-Release Tasks
54+
## Pre-release tasks
5455
${pre_release_tasks}
5556
"
5657
fi
5758
if [ -n "$post_release_tasks" ]; then
5859
release_body+="
59-
## Post-Release Tasks
60+
## Post-release tasks
6061
${post_release_tasks}
6162
"
6263
fi

0 commit comments

Comments
 (0)