[release-announce] glance 20.1.0 (ussuri)
no-reply at openstack.org
no-reply at openstack.org
Mon Aug 2 10:26:36 UTC 2021
We joyfully announce the release of:
glance 20.1.0: OpenStack Image Service
This release is part of the ussuri stable release series.
The source is available from:
https://opendev.org/openstack/glance
Download the package from:
https://tarballs.openstack.org/glance/
Please report issues through:
https://bugs.launchpad.net/glance/+bugs
For more details, please see below.
20.1.0
^^^^^^
Bug Fixes
* A change was added to the import API which provides time-based
locking of an image to exclude other import operations from starting
until the lock-holding task completes (see Bug 1884596). The lock is
based on the task that we start to do the work, and the UUID of that
task is stored in the "os_glance_import_task" image property, which
indicates who owns the lock. If the task holding the lock fails to
make progress for 60 minutes, another import operation will be
allowed to steal the lock and start another import operation.
(https://bugs.launchpad.net/glance/+bug/1884596)
Changes in glance 20.0.1..20.1.0
--------------------------------
9d98f2f1 Make test-setup.sh compatible with mysql8
e87d3fbb Add housekeeping module and staging cleaner
54060e8b Make functional tests set node_staging_uri
cc22468d Drop lower-constraints jobs
977ce4d7 Fix a failure to parse json file
3880298a Add a release note about import locking
5b681da1 Cleanup import status information after busting a lock
03a11dbb Add ImageLock to base flow checks
6c8f1e81 Functional test enhancement for lock busting
7ba0762d Add functional test for task status updating
bb573185 Handle atomic image properties separately
beece27e Move SynchronousAPIBase to a generalized location
173fdb19 Add FakeData generator test utility
28773650 Fix metadefs for compute-watchdog
055e5e79 Implement time-limited import locking
5998933a Add context.elevated() helper for getting admin privileges
ebeb31e6 Poll for final state on test_copy_image_revert_lifecycle()
541c0fd6 Fix non-deterministic copy_image_revert_lifecycle test
2d5e8439 Fix import failure status reporting when all_stores_must_succeed=True
931d39ec Functional reproducer for bug 1891352
3da696e0 Update task message during import
586ca78a Heartbeat the actual work of the task
825a0ec7 Add image_delete_property_atomic() helper
56d01f25 Add image_set_property_atomic() helper
663e027e Flesh out FakeImage for extra_properties
ec46cbca Add tests for _ImportToStore.execute()
ea34be42 Add testing for _CompleteTask in api_image_import
0895d191 Make test_copy_image_revert_lifecycle handle 409 on import retry
eb08fbae Make import task capable of running as admin on behalf of user
168fdb7f Add a functional test for non-owned image copying
3bf1af9b Refactor common auth token code in images test
bc826947 Add a test to replicate the owner-required behavior of copy-image
Diffstat (except docs and test files)
-------------------------------------
.zuul.yaml | 3 -
etc/metadefs/compute-vmware.json | 2 +-
etc/metadefs/compute-watchdog.json | 9 +-
glance/api/v2/images.py | 138 +++-
glance/async_/flows/api_image_import.py | 467 ++++++++++---
glance/common/exception.py | 4 +
glance/common/scripts/image_import/main.py | 8 +-
glance/common/scripts/utils.py | 97 +++
glance/common/wsgi.py | 8 +-
glance/common/wsgi_app.py | 28 +
glance/context.py | 14 +
glance/db/__init__.py | 13 +-
glance/db/simple/api.py | 41 +-
glance/db/sqlalchemy/api.py | 119 +++-
glance/domain/proxy.py | 10 +
glance/housekeeping.py | 126 ++++
.../functional/v2/test_images_import_locking.py | 288 ++++++++
.../unit/async_/flows/test_api_image_import.py | 749 ++++++++++++++++++++-
.../unit/common/scripts/image_import/test_main.py | 26 +
.../unit/common/scripts/test_scripts_utils.py | 80 +++
lower-constraints.txt | 143 ----
.../import-locking-behavior-901c691f3839fe0a.yaml | 14 +
tools/test-setup.sh | 4 +-
tox.ini | 6 -
37 files changed, 3576 insertions(+), 392 deletions(-)
More information about the Release-announce
mailing list