From: "Darrick J. Wong" <djwong@kernel.org>
To: Andrey Albershteyn <aalbersh@redhat.com>
Cc: linux-xfs@vger.kernel.org, Andrey Albershteyn <aalbersh@kernel.org>
Subject: Re: [PATCH v3 8/8] release.sh: add -f to generate for-next update email
Date: Tue, 11 Feb 2025 11:09:49 -0800 [thread overview]
Message-ID: <20250211190949.GF21808@frogsfrogsfrogs> (raw)
In-Reply-To: <20250211-update-release-v3-8-7b80ae52c61f@kernel.org>
On Tue, Feb 11, 2025 at 06:27:00PM +0100, Andrey Albershteyn wrote:
> 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() {
Hoisting this to a function probably ought to be done in the patch that
adds the email message body creation in the first place, so that the
changes for --for-next are more obvious.
The end result looks ok at least, so
Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>
--D
> + 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
>
>
prev parent reply other threads:[~2025-02-11 19:09 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 ` [PATCH v3 8/8] release.sh: add -f to generate for-next update email Andrey Albershteyn
2025-02-11 19:09 ` Darrick J. Wong [this message]
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=20250211190949.GF21808@frogsfrogsfrogs \
--to=djwong@kernel.org \
--cc=aalbersh@kernel.org \
--cc=aalbersh@redhat.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox