[release-announce] glance 21.0.0 (victoria)

no-reply at openstack.org no-reply at openstack.org
Wed Oct 14 10:18:00 UTC 2020


We are delighted to announce the release of:

glance 21.0.0: OpenStack Image Service

This release is part of the victoria 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.

21.0.0
^^^^^^


Prelude
*******

The Victoria release includes some important milestones in Glance
development priorities.

* Added support to calculate virtual size of image based on disk
  format

* Added support for sparse image upload for filesystem and rbd
  driver of glance_store

* Improved performance of rbd store chunk upload

* Fixed some important bugs around copy-image import method and
  importing image to multiple stores

* Added support to configure multiple cinder stores


Bug Fixes
*********

* Bug 1795950: Fix cleaning of web-download image import in
  node_staging_uri

* Bug 1895663: Image import "web-download" doesn't check on download
  size

   (https://code.launchpad.net/bugs/1795950)
  (https://code.launchpad.net/bugs/1895663)

Changes in glance 20.0.0.0rc1..21.0.0
-------------------------------------

c4d88807 Bump Images API version to 2.11
6504588a Victoria RC-1 release notes
922c2ed5 Fix cleaning of web-download image import
df049567 Do not use OSC in infra playbook
68c202d3 Image import "web-download" check downloaded size
54a2231f docs: Remove cruft from 'conf.py'
d3d9982e docs: Convert table of image properties to definition list
e1fe3024 docs: Remove references to XenAPI driver
213660d8 Victoria milestone 3 release notes
1a9b3458 Run the nova-ceph-multistore job against glance
e16d5c9b Corrections in default value of all_stores_must_succeed
9bd06d24 [Docs] Cinder multiple stores for glance
98a1e792 Support cinder multiple stores
a8fb4e25 Remove babel.cfg etc
19229d79 Refresh Glance example configs for Victoria milestone 3
bb7774c9 Add a release note about import locking
179d111c [Trivial]Add missing print parameters in log messages
c023445d Make our import-workflow job also convert images to raw
76667323 Disable wait_for_fork() kill aggression if expect_exit=True
b6380424 Make our ceph job enable thin provisioning
552da844 Cleanup import status information after busting a lock
3636915d Add ImageLock to base flow checks
a86062c4 Functional test enhancement for lock busting
26f0311b Handle atomic image properties separately
36cbc50e Move SynchronousAPIBase to a generalized location
1b006c4f Add functional test for task status updating
3f6e349d Implement time-limited import locking
dc08127f Add FakeData generator test utility
8c7342cb Make test_copy_image_revert_lifecycle handle 409 on import retry
6c96319e Poll for final state on test_copy_image_revert_lifecycle()
737dfca8 Fix import failure status reporting when all_stores_must_succeed=True
3041b0b4 zuul: use the new barbican simple-crypto job
ec372377 Functional reproducer for bug 1891352
8e8072c1 Make wait_for_fork() more robust against infinite deadlock
77d9cfa6 Update task message during import
e49f23c0 Heartbeat the actual work of the task
b093ae35 Add image_delete_property_atomic() helper
7c91a177 Flesh out FakeImage for extra_properties
94a672c7 Add tests for _ImportToStore.execute()
2e11ecb1 Add testing for _CompleteTask in api_image_import
5a7fb9db Fix non-deterministic copy_image_revert_lifecycle test
12167a95 Squelch the stevedore.extension debug logging in functional tests
747ba1c1 Use correct import order in test_api_import_image
b0197656 Inspect upload/import stream and set virtual_size
6a2a6283 Stream-friendly disk format inspection module
b985e44f Fix active image without data
e8b13ce1 Fix active image when all uploads fail
cd50dd21 [goal] Migrate glance jobs to focal
e1f0e94b Add "stores" to disallowed properties
f2276f9a Change database migration version to victoria
5071a60c Refresh Glance example configs for Victoria milestone 2
013bdad8 Add new config options in sample config generator
a4638930 Victoria milestone 2 release notes
f4b78606 Make wsgi_app support graceful shutdown
783fa72f Make image conversion use a proper python interpreter for prlimit
52eaa56e [Doc] Policy support to copy unowned images
16a5431c Make glance-api able to do async tasks in WSGI mode
94193c04 Fix release note formatting
ffd2f5e6 Fix broken glance-cache-manage utility
7d49b7ff Make our tempest job use import, standalone, and inject_metadata
785eefcf Fix admin docs deplying under HTTPD
2a518431 Add image_set_property_atomic() helper
eec06048 Remove deprecated glance-replicator options
363a78dd Remove unused "copy_from" policy rule
ee8a69d5 Add a policy knob for allowing non-owned image copying
96507d3e Update sample configs post deprecation removals
30680961 Cleanup remove api v1 and registry code
3ce486f9 Don't use Stevedore 3.0.0 which breaks gate
2fd0c257 Make import task capable of running as admin on behalf of user
c59ed1bc Add context.elevated() helper for getting admin privileges
937a70ab Refactor TaskFactory and Executor to take an admin ImageRepo
019afb78 Add a functional test for non-owned image copying
1b172798 Refactor common auth token code in images test
24c28123 Fix metadefs for compute-watchdog
f20daa18 Drop collections.abc compat handling
b8332d9b Don't include plugins on 'copy-image' import
e2e050c0 Add 'all' visibility filter for listing images in docs
ab0e5268 Improve lazy loading mechanism for multiple stores
bbb3ede8 Removal of 'enable_v2_api'
9eb562eb Update lower-constraints versions
f450b9cf Add a test to replicate the owner-required behavior of copy-image
673666cb Deprecation cleanout Registry and related
c930638f Check authorization before import for image
b2200300 Make test-setup.sh compatible with mysql8
22d8f1fc Fix: Interrupted copy-image leaking data on subsequent operation
c636ad29 Switch from unittest2 compat methods to Python 3.x methods
e6db0b10 Imported Translations from Zanata
7ff8d2eb Use unittest.mock instead of mock
781da935 Remove configs and entries for deprecated registry
f7b16311 Exclude http store if --all-stores specified for import/copy operation
a506e941 Use grenade-multinode instead of the custom legacy job
64e3c411 Stop to use the __future__ module.
03cb88a4 Switch to newer openstackdocstheme and reno versions
cee088c3 Imported Translations from Zanata
4cd56a49 Cap jsonschema 3.2.0 as the minimal version
890b740a Add tests to lower-constraints job
bf637a2a Fix hacking min version to 3.0.1
3e2e51a5 Imported Translations from Zanata
2539e42b Use py38 instead of py37 jobs
06eb617b Switch to new grenade job name
ed3bb4e1 Fix a failure to parse json file
38f33482 Bump default tox env from py37 to py38
10f7130b fix typo in gerrit doc
32f7c08b Imported Translations from Zanata
4505f5d6 Add py38 package metadata
f0d77a4e Imported Translations from Zanata
6cb83180 Add Python3 victoria unit tests
e1fd6540 Update master for stable/ussuri
0049e18f Imported Translations from Zanata
4a64d976 Deprecate the 'checksum' image property


Diffstat (except docs and test files)
-------------------------------------

.zuul.yaml                                         |  182 +-
api-ref/source/conf.py                             |   13 +-
api-ref/source/v2/images-import.inc                |    9 +-
api-ref/source/v2/images-parameters.yaml           |   16 +-
babel.cfg                                          |    1 -
bindep.txt                                         |    2 +
etc/glance-api-paste.ini                           |    4 -
etc/glance-api.conf                                |  634 ++-----
etc/glance-cache.conf                              |  487 +----
etc/glance-registry-paste.ini                      |   35 -
etc/glance-registry.conf                           | 1896 --------------------
etc/glance-scrubber.conf                           |  171 +-
etc/metadefs/compute-libvirt-image.json            |    9 +
etc/metadefs/compute-vmware.json                   |    2 +-
etc/metadefs/compute-watchdog.json                 |    9 +-
etc/metadefs/compute-xenapi.json                   |    9 -
etc/oslo-config-generator/glance-registry.conf     |   10 -
glance/api/__init__.py                             |    2 -
glance/api/authorization.py                        |   12 +-
glance/api/cached_images.py                        |  129 --
glance/api/common.py                               |   25 +-
glance/api/middleware/cache.py                     |   16 +-
glance/api/middleware/version_negotiation.py       |   27 +-
glance/api/policy.py                               |   10 +-
glance/api/v1/__init__.py                          |   26 -
glance/api/v1/controller.py                        |   96 -
glance/api/v1/filters.py                           |   40 -
glance/api/v1/router.py                            |   18 +-
glance/api/v1/upload_utils.py                      |  293 ---
glance/api/v2/image_data.py                        |   35 +-
glance/api/v2/images.py                            |  184 +-
glance/api/v2/tasks.py                             |    4 +-
glance/api/versions.py                             |   38 +-
glance/async_/__init__.py                          |  114 +-
.../async_/flows/_internal_plugins/copy_image.py   |   21 +-
.../async_/flows/_internal_plugins/web_download.py |   30 +-
glance/async_/flows/api_image_import.py            |  512 ++++--
glance/async_/flows/plugins/image_conversion.py    |    2 +
glance/async_/taskflow_executor.py                 |   20 +-
glance/cmd/api.py                                  |    4 +
glance/cmd/cache_manage.py                         |    1 -
glance/cmd/control.py                              |   10 +-
glance/cmd/manage.py                               |    6 +-
glance/cmd/registry.py                             |  102 --
glance/cmd/replicator.py                           |   19 -
glance/common/config.py                            |  161 +-
glance/common/exception.py                         |    4 +
glance/common/format_inspector.py                  |  682 +++++++
glance/common/rpc.py                               |  302 ----
glance/common/scripts/image_import/main.py         |    8 +-
glance/common/scripts/utils.py                     |   97 +
glance/common/store_utils.py                       |   80 +-
glance/common/utils.py                             |    4 +
glance/common/wsgi.py                              |    5 +-
glance/common/wsgi_app.py                          |   26 +
glance/context.py                                  |   14 +
glance/db/__init__.py                              |   31 +-
glance/db/migration.py                             |    4 +-
glance/db/registry/__init__.py                     |    0
glance/db/registry/api.py                          |  546 ------
glance/db/simple/__init__.py                       |    4 +
glance/db/simple/api.py                            |   41 +-
glance/db/sqlalchemy/alembic_migrations/env.py     |    2 -
glance/db/sqlalchemy/api.py                        |  119 +-
glance/domain/__init__.py                          |   16 +-
glance/domain/proxy.py                             |   10 +
glance/gateway.py                                  |    9 +-
glance/hacking/checks.py                           |    1 -
glance/image_cache/drivers/sqlite.py               |    2 -
glance/image_cache/drivers/xattr.py                |    2 -
glance/locale/de/LC_MESSAGES/glance.po             |    6 +-
glance/locale/en_GB/LC_MESSAGES/glance.po          |   51 +-
glance/locale/es/LC_MESSAGES/glance.po             |    6 +-
glance/locale/fr/LC_MESSAGES/glance.po             |    6 +-
glance/locale/it/LC_MESSAGES/glance.po             |    6 +-
glance/locale/ja/LC_MESSAGES/glance.po             |    6 +-
glance/locale/ko_KR/LC_MESSAGES/glance.po          |    6 +-
glance/locale/pt_BR/LC_MESSAGES/glance.po          |    6 +-
glance/locale/ru/LC_MESSAGES/glance.po             |    6 +-
glance/locale/tr_TR/LC_MESSAGES/glance.po          |    6 +-
glance/locale/zh_CN/LC_MESSAGES/glance.po          |    6 +-
glance/locale/zh_TW/LC_MESSAGES/glance.po          |    6 +-
glance/location.py                                 |   34 +-
glance/opts.py                                     |   36 +-
glance/policies/image.py                           |    3 +-
glance/registry/__init__.py                        |   68 -
glance/registry/api/__init__.py                    |   40 -
glance/registry/api/v1/__init__.py                 |   91 -
glance/registry/api/v1/images.py                   |  569 ------
glance/registry/api/v1/members.py                  |  366 ----
glance/registry/api/v2/__init__.py                 |   35 -
glance/registry/api/v2/rpc.py                      |   53 -
glance/registry/client/__init__.py                 |  264 ---
glance/registry/client/v1/__init__.py              |    0
glance/registry/client/v1/api.py                   |  227 ---
glance/registry/client/v1/client.py                |  276 ---
glance/registry/client/v2/__init__.py              |    0
glance/registry/client/v2/api.py                   |  109 --
glance/registry/client/v2/client.py                |   27 -
.../functional/v2/test_images_import_locking.py    |  288 +++
.../v2/test_property_quota_violations.py           |    1 -
.../unit/async_/flows/test_api_image_import.py     |  811 ++++++++-
.../unit/common/scripts/image_import/test_main.py  |   26 +
.../unit/common/scripts/test_scripts_utils.py      |   80 +
lower-constraints.txt                              |   46 +-
.../legacy/glance-dsvm-grenade-multinode/post.yaml |   15 -
.../legacy/glance-dsvm-grenade-multinode/run.yaml  |   46 -
playbooks/post-check-metadata-injection.yaml       |   20 +
.../notes/bug-1881958-d0e16538f3c0ffaa.yaml        |    6 +
...leanout_registry_data-api-9d91368aed83497e.yaml |   10 +
.../cleanup-enable_v2_api-9b9b467f4ae8c3b1.yaml    |    5 +
.../notes/deprecate-checksum-a602853403e1c4a8.yaml |   23 +
.../notes/fix_1889640-95d543629d7dadce.yaml        |    6 +
.../notes/fix_1889676-f8d302fd240c8a57.yaml        |    6 +
.../notes/fix_httpd_docs-3efff0395f96a94d.yaml     |    6 +
.../import-locking-behavior-901c691f3839fe0a.yaml  |   13 +
...no_plugins_for_copy-image-26c0e384a368bf6a.yaml |    6 +
.../replicator-token-cleanup-4a573c86f1acccc0.yaml |    6 +
...rt-cinder-multiple-stores-eb4e6d912d549ee9.yaml |   12 +
...victoria-m2-release-notes-8a6ae2fdb3d29dae.yaml |   41 +
.../victoria-m3-releasenotes-9209cea98a29abc4.yaml |   30 +
...ictoria-rc1-release-notes-d928355cf90d608d.yaml |   25 +
releasenotes/source/conf.py                        |   15 +-
releasenotes/source/index.rst                      |    1 +
.../locale/en_GB/LC_MESSAGES/releasenotes.po       | 1001 ++++++++++-
releasenotes/source/ussuri.rst                     |    6 +
requirements.txt                                   |   12 +-
setup.cfg                                          |   18 +-
test-requirements.txt                              |    3 +-
tools/test-setup.sh                                |    4 +-
tools/test_format_inspector.py                     |  107 ++
tox.ini                                            |    6 +-
194 files changed, 8799 insertions(+), 9167 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index a4c6777f..374e8e42 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -6 +6 @@ pbr!=2.1.0,>=2.0.0 # Apache-2.0
-defusedxml>=0.5.0 # PSF
+defusedxml>=0.6.0 # PSF
@@ -10 +10 @@ SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8,>=1.0.10 # MIT
-eventlet!=0.23.0,!=0.25.0,>=0.22.0 # MIT
+eventlet>=0.25.1 # MIT
@@ -23 +23 @@ oslo.utils>=3.33.0 # Apache-2.0
-stevedore>=1.20.0 # Apache-2.0
+stevedore!=3.0.0,>=1.20.0 # Apache-2.0
@@ -34 +34 @@ Paste>=2.0.2 # MIT
-jsonschema>=2.6.0 # MIT
+jsonschema>=3.2.0 # MIT
@@ -39 +39 @@ six>=1.10.0 # MIT
-oslo.db>=4.27.0 # Apache-2.0
+oslo.db>=5.0.0 # Apache-2.0
@@ -51 +51 @@ osprofiler>=1.4.0 # Apache-2.0
-glance-store>=1.0.0 # Apache-2.0
+glance-store>=2.3.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 0b26d011..7e833fbe 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -6 +6 @@
-hacking>=3.0,<3.1.0 # Apache-2.0
+hacking>=3.0.1,<3.1.0 # Apache-2.0
@@ -24,0 +25 @@ Pygments>=2.2.0  # BSD license
+boto3>=1.9.199 # Apache-2.0






More information about the Release-announce mailing list