releases/openstack_releases/cmds
Hervé Beraud 9504e96b5d Fix validation to ensure that first release of series isn't a bugfix
We recently observed that this check was skipped. Indeed it was
possible to propose a bugfix version on the first release of a series
without facing validation errors [1].

The described situation was allowed by checks that we introduced
during Wallaby [2]. Those was designed to ensure that we can
build sdist from the proposed tag. Indeed, they temporarly created
the new git tag to build sdist from it. However we never delete this
tag after our tests so this temporary tag is see as an existing tag
and so that led us to the observed bug.

Our validation check that the first version number of series isn't a
bugfix after it tried to build the sdist from the new tag, so, without
this patch the tag newly created by the sdist check remains available
in the repo, and so a couple of next checks are skipped, including the
validation of the version number, because these checks are decorated
to ignore existing tags.

Indeed the function decorated with `skip_existing_tags` detect this
temporary tag as an existing tag, so, the decorated functions are
skipped.

We should notice that it surely impacted other checks in the same manner.
Indeed, all validation functions decorated with this function
`skip_existing_tags` are impacted by this bug.
Hopefully it didn't have too much side effects.

These changes delete the temporary tag after usage to ensure to restore
the initial environment and to stop skipping next checks.

[1] https://review.opendev.org/c/openstack/releases/+/795836
[2] 80652b5232

Change-Id: I5d9024528d08487a7582e0a0e73576b22708a6cf
2021-06-17 13:41:12 +02:00
..
__init__.py Refactor validation script 2015-07-23 17:33:03 +00:00
check_diff_start.py Remove unused imports in tools and commands 2019-11-27 17:45:34 +01:00
check_schema.py Remove unused imports in tools and commands 2019-11-27 17:45:34 +01:00
edit_deliverable.py Remove unused imports in tools and commands 2019-11-27 17:45:34 +01:00
find_gerrit_acl_issues.py Rename review.openstack.org to review.opendev.org 2019-05-12 04:33:25 +08:00
get_contacts.py Use __str__ for printing the contact information 2020-01-23 12:30:09 +00:00
get_deliverable_owner.py Add tools/bulk_review.sh and get-contacts 2020-01-23 11:52:59 +00:00
init_series.py init-series: Skip unrelease comment for trailing 2020-10-19 10:36:42 -05:00
interactive_release.py Remove unused imports in tools and commands 2019-11-27 17:45:34 +01:00
list_changes.py add `reno semver-next` to the list-changes output 2020-09-03 08:34:49 -04:00
list_constraints.py Remove unused imports in tools and commands 2019-11-27 17:45:34 +01:00
list_deliverables.py Adding a tool to track project who need to drop eol branches 2020-11-12 10:57:39 +00:00
list_series.py fix nits 2021-03-05 17:32:09 +01:00
list_unreleased_changes.py Allow to consume projects without the openstack prefix 2020-10-06 11:46:09 +02:00
mail.py Add retries to sending emails 2020-04-27 11:23:28 -05:00
make_tracking_pad.py Update etherpad URL link 2020-04-13 11:54:40 -05:00
missing.py Update missing cmd to follow redirects 2020-05-13 07:19:35 -05:00
new_release.py Add intermediate-branch arg to new-release script 2020-08-12 17:16:26 +02:00
propose_final_releases.py Trailing is a deliverable type, not a release model 2020-06-16 16:18:30 +02:00
propose_library_branches.py Trailing is a deliverable type, not a release model 2020-06-16 16:18:30 +02:00
reformat_yaml.py fix format-yaml to work with python 3 2017-07-31 17:11:02 -04:00
release_notes.py Fix announce email project names 2019-04-18 11:44:17 -05:00
validate.py Fix validation to ensure that first release of series isn't a bugfix 2021-06-17 13:41:12 +02:00