From 915a9a9d337114474c4d95620bc912ae578fd5fa Mon Sep 17 00:00:00 2001 From: Doug Hellmann Date: Wed, 27 Mar 2019 13:54:24 -0400 Subject: [PATCH] add a tool to show changes in rc-based repos Simplify the instructions by providing a special script and then update the instructions to refer to it. Change-Id: Ibbcd422c06dc4aeb3df503f3c0f084b39d3bf0f7 Signed-off-by: Doug Hellmann --- doc/source/reference/process.rst | 6 +++--- tools/list_rc_updates.sh | 30 ++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 3 deletions(-) create mode 100755 tools/list_rc_updates.sh diff --git a/doc/source/reference/process.rst b/doc/source/reference/process.rst index c3eb549e47..eaec53d8e5 100644 --- a/doc/source/reference/process.rst +++ b/doc/source/reference/process.rst @@ -346,13 +346,13 @@ Between RC1 and Final are tagged, create their stable branches. #. On the morning of the deadline for final release candidates, check - the list of unreleased changes for milestone projects and verify + the list of unreleased changes for cycle-with-rc projects and verify with the PTLs and liaisons that they are planning a release or that they do not need one. - In the release-tools repository working directory, run:: + In the releases repository working directory, run:: - $ ./list_unreleased_changes.sh stable/newton $(list-repos --tag release:cycle-with-rc) 2>&1 | tee unreleased.log + $ ./tools/list_rc_updates.sh #. Propose stable/$series branch creation for deliverables that have not requested it yet. diff --git a/tools/list_rc_updates.sh b/tools/list_rc_updates.sh new file mode 100755 index 0000000000..dd150b45aa --- /dev/null +++ b/tools/list_rc_updates.sh @@ -0,0 +1,30 @@ +#!/bin/bash +# +# Convenience wrapper to show the unreleased changes in cycle-with-rc +# projects that have not yet been released. This is typically used +# after the first RC is cut to look for updates that need to be +# released. + +TOOLSDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +BASEDIR=$(dirname $TOOLSDIR) +source $TOOLSDIR/functions + +if [[ -z "$VIRTUAL_ENV" ]]; then + if [[ ! -d $BASEDIR/.tox/venv ]]; then + (cd $BASEDIR && tox -e venv --notest) + fi + source $BASEDIR/.tox/venv/bin/activate +fi + +# Figure out the current series from the releases directory. +current_series=$(python -c 'import openstack_releases.defaults; \ + print(openstack_releases.defaults.RELEASE)') +if [ -z "$current_series" ]; then + echo "Could not determine the current release series." + exit 1 +fi + +echo "Finding repos in the current series..." +repos=$(list-deliverables --model cycle-with-rc -r) + +${TOOLSDIR}/list_unreleased_changes.sh stable/${current_series} ${repos}