From fedd53c93a68112ebe794c05415a1eba90fa826e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20Beraud?= Date: Mon, 13 Nov 2023 10:20:30 +0100 Subject: [PATCH] fix tooling to retrieve unbranched deliverables based release id list unbranched deliverables is not designed to work with new release id. These changes add a command to allow to retrieve series id from a shell script by passing the name of the series. This new command is called by the list unbranched deliverables to check if the corresponding stable branch exists (based on the release id). Change-Id: I102b90c5221e57dd5697e2e81aa7edb8615ce445 --- openstack_releases/cmds/get_series_id.py | 33 ++++++++++++++++++++++++ setup.cfg | 1 + tools/list_unbranched_projects.sh | 5 ++-- 3 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 openstack_releases/cmds/get_series_id.py diff --git a/openstack_releases/cmds/get_series_id.py b/openstack_releases/cmds/get_series_id.py new file mode 100644 index 0000000000..6d33fd102d --- /dev/null +++ b/openstack_releases/cmds/get_series_id.py @@ -0,0 +1,33 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +import argparse +import os + +from openstack_releases import series_status + +BASE_PATH = os.path.dirname(os.path.realpath(__file__)) +ROOT_DIR = f'{BASE_PATH}/../../data' + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument( + 'series', + help='the name of the series, such as "wallaby" or "xena"', + ) + args = parser.parse_args() + + series = series_status.SeriesStatus.from_directory(ROOT_DIR) + for release in series: + if release == args.series: + print(series.get(release).release_id) diff --git a/setup.cfg b/setup.cfg index 29dbb8452f..4314ecf0ec 100644 --- a/setup.cfg +++ b/setup.cfg @@ -47,3 +47,4 @@ console_scripts = find-gerrit-acl-issues = openstack_releases.cmds.find_gerrit_acl_issues:main get-contacts = openstack_releases.cmds.get_contacts:main get-versions-on-series = openstack_releases.cmds.get_versions_on_series:main + get-series-id = openstack_releases.cmds.get_series_id:main diff --git a/tools/list_unbranched_projects.sh b/tools/list_unbranched_projects.sh index 60025b743c..b17b72da19 100755 --- a/tools/list_unbranched_projects.sh +++ b/tools/list_unbranched_projects.sh @@ -55,8 +55,9 @@ series=($(list-maintained-series)) export PAGER= for current_series in "${series[@]}"; do - echo -e "\nUnbranched projects for ${current_series}:\n" - grep -L "stable/${current_series}" ${BASEDIR}/deliverables/${current_series}/*.yaml | \ + release_id=($(get-series-id ${current_series})) + echo -e "\nUnbranched projects for ${current_series} (id: ${release_id}):\n" + grep -L "stable/${release_id}" ${BASEDIR}/deliverables/${current_series}/*.yaml | \ sed 's@'"${BASEDIR}"'\/@@g' | \ grep -v tempest | \ grep -v patrol