From a3f638ca7670587565a7cf00f02db651c3e29f5a Mon Sep 17 00:00:00 2001 From: Michael Marchetti Date: Fri, 23 Feb 2018 20:29:14 +0100 Subject: [PATCH] Update changelog generation for release tag Signed-off-by: Michael Marchetti --- tools/generatechangelog-pipeline.sh | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tools/generatechangelog-pipeline.sh b/tools/generatechangelog-pipeline.sh index c527c549..e2fa55e4 100755 --- a/tools/generatechangelog-pipeline.sh +++ b/tools/generatechangelog-pipeline.sh @@ -2,8 +2,17 @@ REPO_NAME=$(basename $(git config --get remote.origin.url) | cut -d'.' -f1) # get the latest tag -TAG_END="HEAD" TAG_START=$(git tag | sort -Vr | head -1) + +head_tag_diff=$(git rev-list $TAG_START ^HEAD |wc -l) +if [ $head_tag_diff -eq 0 ]; then + # HEAD and latest tag intersect. Instead try and find a previous tag and use that as the start diff + TAG_END=$TAG_START + TAG_START=$(git tag | sort -Vr | head -2 | sort -V | head -1) +else + TAG_END="HEAD" +fi + git pull --tags origin master &> /dev/null echo "

$REPO_NAME Changelog

" echo "

tag: ${TAG_START} -> ${TAG_END}

" -- 2.25.1