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@xxxxxxxxxx> --- 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@xxxxxxxxxxxxxxx +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@xxxxxxxxxxxxxxx -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