All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrey Albershteyn <aalbersh@redhat.com>
To: linux-xfs@vger.kernel.org
Cc: Andrey Albershteyn <aalbersh@kernel.org>
Subject: [PATCH v3 8/8] release.sh: add -f to generate for-next update email
Date: Tue, 11 Feb 2025 18:27:00 +0100	[thread overview]
Message-ID: <20250211-update-release-v3-8-7b80ae52c61f@kernel.org> (raw)
In-Reply-To: <20250211-update-release-v3-0-7b80ae52c61f@kernel.org>

Add --for-next/-f to generate ANNOUNCE email for for-next branch
update. This doesn't require new commit/tarball/tags, so skip it.

Signed-off-by: Andrey Albershteyn <aalbersh@kernel.org>
---
 release.sh | 92 ++++++++++++++++++++++++++++++++++++++++----------------------
 1 file changed, 59 insertions(+), 33 deletions(-)

diff --git a/release.sh b/release.sh
index 3d272aebdb1fe7a3b47689b9dc129a26d6a9eb20..863c2c5e061b73e232c0bb01e879a115b6dd55bb 100755
--- a/release.sh
+++ b/release.sh
@@ -14,12 +14,14 @@ set -e
 KUP=0
 COMMIT=1
 LAST_HEAD=""
+FOR_NEXT=0
 
 help() {
 	echo "$(basename) - create xfsprogs release"
 	printf "\t[--kup|-k] upload final tarball with KUP\n"
 	printf "\t[--no-commit|-n] don't create release commit\n"
 	printf "\t[--last-head|-l] commit of the last release\n"
+	printf "\t[--for-next|-f] generate announce email for for-next update\n"
 }
 
 update_version() {
@@ -42,6 +44,48 @@ update_version() {
 	sed -i "1s/^/xfsprogs (${version}-1) unstable; urgency=low\n/" ./debian/changelog
 }
 
+prepare_mail() {
+	branch="$1"
+	mail_file=$(mktemp)
+	if [ -n "$LAST_HEAD" ]; then
+		if [ $branch == "master" ]; then
+			reason="$(git describe --abbrev=0 $branch) released"
+		else
+			reason="for-next updated to $(git log --oneline --format="%h" -1 $branch)"
+		fi;
+		cat << EOF > $mail_file
+To: linux-xfs@vger.kernel.org
+Cc: $(./tools/git-contributors.py $LAST_HEAD..$branch --delimiter ' ')
+Subject: [ANNOUNCE] xfsprogs: $reason
+
+Hi folks,
+
+The xfsprogs $branch branch in repository at:
+
+	git://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git
+
+has just been updated.
+
+Patches often get missed, so if your outstanding patches are properly reviewed
+on the list and not included in this update, please let me know.
+
+The for-next branch has also been updated to match the state of master.
+
+The new head of the $branch branch is commit:
+
+$(git log --oneline --format="%H" -1 $branch)
+
+New commits:
+
+$(git shortlog --format="[%h] %s" $LAST_HEAD..$branch)
+
+Code Diffstat:
+
+$(git diff --stat --summary -C -M $LAST_HEAD..$branch)
+EOF
+	fi
+}
+
 while [ $# -gt 0 ]; do
 	case "$1" in
 		--kup|-k)
@@ -54,6 +98,9 @@ while [ $# -gt 0 ]; do
 			LAST_HEAD=$2
 			shift
 			;;
+		--for-next|-f)
+			FOR_NEXT=1
+			;;
 		--help|-h)
 			help
 			exit 0
@@ -66,6 +113,17 @@ while [ $# -gt 0 ]; do
 	shift
 done
 
+if [ $FOR_NEXT -eq 1 ]; then
+	echo "Push your for-next branch:"
+	printf "\tgit push origin for-next:for-next\n"
+	prepare_mail "for-next"
+	if [ -n "$LAST_HEAD" ]; then
+		echo "Command to send ANNOUNCE email"
+		printf "\tneomutt -H $mail_file\n"
+	fi
+	exit 0
+fi
+
 if [ -z "$EDITOR" ]; then
 	EDITOR=$(command -v vi)
 fi
@@ -128,39 +186,7 @@ if [ $KUP -eq 1 ]; then
 		pub/linux/utils/fs/xfs/xfsprogs/
 fi;
 
-mail_file=$(mktemp)
-if [ -n "$LAST_HEAD" ]; then
-	cat << EOF > $mail_file
-To: linux-xfs@vger.kernel.org
-Cc: $(./tools/git-contributors.py $LAST_HEAD.. --delimiter ' ')
-Subject: [ANNOUNCE] xfsprogs $(git describe --abbrev=0) released
-
-Hi folks,
-
-The xfsprogs repository at:
-
-	git://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git
-
-has just been updated.
-
-Patches often get missed, so if your outstanding patches are properly reviewed
-on the list and not included in this update, please let me know.
-
-The for-next branch has also been updated to match the state of master.
-
-The new head of the master branch is commit:
-
-$(git log --oneline --format="%H" -1)
-
-New commits:
-
-$(git shortlog --format="[%h] %s" $LAST_HEAD..HEAD)
-
-Code Diffstat:
-
-$(git diff --stat --summary -C -M $LAST_HEAD..HEAD)
-EOF
-fi
+prepare_mail "master"
 
 echo ""
 echo "Done. Please remember to push out tags and the branch."

-- 
2.47.2


  parent reply	other threads:[~2025-02-11 17:27 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-11 17:26 [PATCH v3 0/8] Update release.sh Andrey Albershteyn
2025-02-11 17:26 ` [PATCH v3 1/8] release.sh: add signing and fix outdated commands Andrey Albershteyn
2025-02-11 17:26 ` [PATCH v3 2/8] release.sh: add --kup to upload release tarball to kernel.org Andrey Albershteyn
2025-02-11 17:26 ` [PATCH v3 3/8] release.sh: update version files make commit optional Andrey Albershteyn
2025-02-11 17:26 ` [PATCH v3 4/8] release.sh: generate ANNOUNCE email Andrey Albershteyn
2025-02-11 17:26 ` [PATCH v3 5/8] Add git-contributors script to notify about merges Andrey Albershteyn
2025-02-11 18:58   ` Darrick J. Wong
2025-02-12 11:16     ` Andrey Albershteyn
2025-02-12 11:37       ` Andrey Albershteyn
2025-02-12 22:24         ` Darrick J. Wong
2025-02-12 21:29       ` Darrick J. Wong
2025-02-11 17:26 ` [PATCH v3 6/8] git-contributors: make revspec required and shebang fix Andrey Albershteyn
2025-02-11 18:59   ` Darrick J. Wong
2025-02-11 17:26 ` [PATCH v3 7/8] release.sh: use git-contributors to --cc contributors Andrey Albershteyn
2025-02-11 17:58   ` Darrick J. Wong
2025-02-11 17:27 ` Andrey Albershteyn [this message]
2025-02-11 19:09   ` [PATCH v3 8/8] release.sh: add -f to generate for-next update email Darrick J. Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250211-update-release-v3-8-7b80ae52c61f@kernel.org \
    --to=aalbersh@redhat.com \
    --cc=aalbersh@kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.