Only collect release notes from tmp output file if the file is non-empty
This commit is contained in:
parent
23df733b71
commit
4fb04c0758
@ -143,24 +143,27 @@ if [[ $CLIENT_VERSION != *"snapshot"* ]]; then
|
||||
if [[ $(git log ${remote_branch}..upstream/master | grep ^commit) ]]; then
|
||||
start_sha=$(git log ${remote_branch}..upstream/master | grep ^commit | tail -n1 | sed 's/commit //g')
|
||||
end_sha=$(git log ${remote_branch}..upstream/master | grep ^commit | head -n1 | sed 's/commit //g')
|
||||
output="/tmp/python-master-relnote.md"
|
||||
output="/tmp/python-master-relnote-$(date +%s).md"
|
||||
release-notes --dependencies=false --org kubernetes-client --repo python --start-sha $start_sha --end-sha $end_sha --output $output
|
||||
sed -i 's/(\[\#/(\[kubernetes-client\/python\#/g' $output
|
||||
# Collect release notes from the output if non-empty
|
||||
if [ -s $output ]; then
|
||||
sed -i 's/(\[\#/(\[kubernetes-client\/python\#/g' $output
|
||||
|
||||
IFS_backup=$IFS
|
||||
IFS=$'\n'
|
||||
sections=($(grep "^### " $output))
|
||||
IFS=$IFS_backup
|
||||
for section in "${sections[@]}"; do
|
||||
# ignore section titles and empty lines; replace newline with liternal "\n"
|
||||
master_release_notes=$(sed -n "/$section/,/###/{/###/!p}" $output | sed -n "{/^$/!p}" | sed ':a;N;$!ba;s/\n/\\n/g')
|
||||
util::changelog::write_changelog v$CLIENT_VERSION "$section" "$master_release_notes"
|
||||
done
|
||||
git add .
|
||||
if ! git diff-index --quiet --cached HEAD; then
|
||||
util::changelog::update_release_api_version $CLIENT_VERSION $CLIENT_VERSION $new_k8s_api_version
|
||||
IFS_backup=$IFS
|
||||
IFS=$'\n'
|
||||
sections=($(grep "^### " $output))
|
||||
IFS=$IFS_backup
|
||||
for section in "${sections[@]}"; do
|
||||
# ignore section titles and empty lines; replace newline with liternal "\n"
|
||||
master_release_notes=$(sed -n "/$section/,/###/{/###/!p}" $output | sed -n "{/^$/!p}" | sed ':a;N;$!ba;s/\n/\\n/g')
|
||||
util::changelog::write_changelog v$CLIENT_VERSION "$section" "$master_release_notes"
|
||||
done
|
||||
git add .
|
||||
git commit -m "update changelog with release notes from master branch"
|
||||
if ! git diff-index --quiet --cached HEAD; then
|
||||
util::changelog::update_release_api_version $CLIENT_VERSION $CLIENT_VERSION $new_k8s_api_version
|
||||
git add .
|
||||
git commit -m "update changelog with release notes from master branch"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
@ -50,20 +50,24 @@ git submodule update --remote
|
||||
# download release notes
|
||||
start_sha=$(git diff | grep "^-Subproject commit " | sed 's/-Subproject commit //g')
|
||||
end_sha=$(git diff | grep "^+Subproject commit " | sed 's/+Subproject commit //g')
|
||||
output="/tmp/python-base-relnote.md"
|
||||
output="/tmp/python-base-relnote-$(date +%s).md"
|
||||
release-notes --dependencies=false --org kubernetes-client --repo python-base --start-sha $start_sha --end-sha $end_sha --output $output
|
||||
sed -i 's/(\[\#/(\[kubernetes-client\/python-base\#/g' $output
|
||||
if [ -s $output ]; then
|
||||
sed -i 's/(\[\#/(\[kubernetes-client\/python-base\#/g' $output
|
||||
|
||||
# update changelog
|
||||
IFS_backup=$IFS
|
||||
IFS=$'\n'
|
||||
sections=($(grep "^### " $output))
|
||||
IFS=$IFS_backup
|
||||
for section in "${sections[@]}"; do
|
||||
# ignore section titles and empty lines; replace newline with liternal "\n"
|
||||
release_notes=$(sed -n "/$section/,/###/{/###/!p}" $output | sed -n "{/^$/!p}" | sed ':a;N;$!ba;s/\n/\\n/g')
|
||||
util::changelog::write_changelog "$TARGET_RELEASE" "$section" "$release_notes"
|
||||
done
|
||||
# update changelog
|
||||
IFS_backup=$IFS
|
||||
IFS=$'\n'
|
||||
sections=($(grep "^### " $output))
|
||||
IFS=$IFS_backup
|
||||
for section in "${sections[@]}"; do
|
||||
# ignore section titles and empty lines; replace newline with liternal "\n"
|
||||
release_notes=$(sed -n "/$section/,/###/{/###/!p}" $output | sed -n "{/^$/!p}" | sed ':a;N;$!ba;s/\n/\\n/g')
|
||||
util::changelog::write_changelog "$TARGET_RELEASE" "$section" "$release_notes"
|
||||
done
|
||||
|
||||
rm -f $output
|
||||
echo "Successfully updated CHANGELOG for submodule."
|
||||
rm -f $output
|
||||
echo "Successfully updated CHANGELOG for submodule."
|
||||
else
|
||||
echo "No CHANGELOG for submodule."
|
||||
fi
|
||||
|
||||
Loading…
Reference in New Issue
Block a user