We eagerly announce the release of: glance 24.0.0: OpenStack Image Service This release is part of the yoga 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. Changes in glance 23.0.0.0rc1..24.0.0 ------------------------------------- daa602ba Change default value for [wsgi]/python_interpreter 69a4de82 Sync example configs for Yoga b434adba Yoga RC-1 release notes a34764ec Added a new API to expose store info 2a9a4c8e Fix overwriting of existing tags while creating new tags 87eae327 Cache management API endpoints 0457ab20 Make FIPS job non-voting ba5f556d Update migration constant bf226615 Add Python 3 only classifier 0f13754f Add fips check jobs f865b8ca [APIImpact] Quota usage API 753c74c3 Fix set_property_atomic() boolean type casting d95fd8ac tests: Remove check for os.set_inheritable eb1fdd8a doc: Remove info on running under Python 3 33874f09 Remove '__unicode__' magic methods 87b4b33e Remove glance.common.client._encode_headers 33741138 Remove final six usage f68e04f2 Remove six.assertRaisesRegex usage 931809c0 Remove remaining six.moves usage 87ba5616 Remove six.moves.urllib usage 9679ffc4 Remove six.moves.http_client usage 39e667a1 Remove six.moves.range usage 67b531b1 Replace six.BytesIO, six.StringIO usage 6bd7c188 Remove six.text_type, six.binary_type usage 800ba964 Fix tests on Python3.10 71c1e4b1 Bump SQLalchemy to version that supports PY3.9 0a5b5117 Use LOG.warning instead of deprecated LOG.warn 502fa0ff Remove six.iteritems usage 0562e333 Remove six.add_metaclass usage ed118391 Updating python testing as per Yoga testing runtime de8c8502 Replace FakeObject with mock.MagicMock 89769785 Imported Translations from Zanata 6fd949a9 Refactor glance cinder tests bfc7a178 Add "bochs" as a possible video model fd36d645 Update Interop doc 474c600b Add missing packages to test dependencies 458e2b7b Remove broken tempest-full-py3-opensuse15 job 947e541f Update qcow test to use qcow2 instead 0ca2f921 Fix typos 5e288201 Imported Translations from Zanata 88d586f0 Use singular they instead of "he/she" where possible 8436401b Remove dead psutil-related code 6bfe0a97 Add libpcre3-dev/pcre-devel to bindep.txt 37696e8c Use single quotes in image policies 416791f3 Bump oslo.policy to version 3.8.1 48929884 Bump oslo.log to version 4.5.0 b8c55efa Add Python3 yoga unit tests d7b66743 Update master for stable/xena fb3d3fa8 trivial: Double quote check_str for consistency f9258314 Make glance cinder multistore job voting Diffstat (except docs and test files) ------------------------------------- .zuul.yaml | 121 ++++--- HACKING.rst | 6 +- api-ref/source/v2/cache-manage.inc | 84 +++++ api-ref/source/v2/discovery-parameters.yaml | 25 ++ api-ref/source/v2/discovery.inc | 59 ++++ api-ref/source/v2/images-parameters.yaml | 8 + api-ref/source/v2/index.rst | 1 + api-ref/source/v2/metadefs-namespaces-tags.inc | 1 + api-ref/source/v2/metadefs-parameters.yaml | 7 + .../v2/samples/stores-list-detail-response.json | 19 ++ api-ref/source/v2/samples/usage-response.json | 20 ++ bindep.txt | 5 + etc/glance-api.conf | 121 +++++-- etc/glance-cache.conf | 11 +- etc/glance-manage.conf | 8 +- etc/glance-scrubber.conf | 19 +- etc/metadefs/compute-libvirt-image.json | 3 +- glance/api/common.py | 16 +- glance/api/middleware/cache.py | 6 +- glance/api/middleware/context.py | 4 +- glance/api/middleware/version_negotiation.py | 4 + glance/api/policy.py | 2 +- glance/api/v2/cached_images.py | 134 +++++++- glance/api/v2/discovery.py | 85 ++++- glance/api/v2/image_actions.py | 4 +- glance/api/v2/image_data.py | 5 +- glance/api/v2/image_members.py | 13 +- glance/api/v2/image_tags.py | 3 +- glance/api/v2/images.py | 41 +-- glance/api/v2/metadef_namespaces.py | 8 +- glance/api/v2/metadef_objects.py | 8 +- glance/api/v2/metadef_properties.py | 8 +- glance/api/v2/metadef_resource_types.py | 10 +- glance/api/v2/metadef_tags.py | 16 +- glance/api/v2/policy.py | 24 +- glance/api/v2/router.py | 42 +++ glance/api/v2/tasks.py | 23 +- glance/api/versions.py | 21 +- glance/async_/flows/api_image_import.py | 9 +- glance/async_/flows/base_import.py | 7 +- glance/async_/flows/convert.py | 2 +- glance/async_/flows/ovf_process.py | 17 +- glance/async_/flows/plugins/image_conversion.py | 3 +- glance/async_/taskflow_executor.py | 3 +- glance/async_/utils.py | 2 +- glance/cmd/cache_cleaner.py | 2 +- glance/cmd/cache_manage.py | 2 - glance/cmd/control.py | 2 - glance/cmd/manage.py | 3 +- glance/cmd/replicator.py | 46 ++- glance/common/auth.py | 8 +- glance/common/client.py | 74 ++--- glance/common/config.py | 17 +- glance/common/crypt.py | 14 +- glance/common/exception.py | 9 +- glance/common/format_inspector.py | 2 +- glance/common/location_strategy/__init__.py | 2 +- glance/common/location_strategy/store_type.py | 6 +- glance/common/property_utils.py | 9 +- glance/common/scripts/api_image_import/main.py | 9 +- glance/common/scripts/image_import/main.py | 10 +- glance/common/scripts/utils.py | 4 +- glance/common/store_utils.py | 6 +- glance/common/swift_store_utils.py | 6 +- glance/common/utils.py | 24 +- glance/common/wsgi.py | 37 +-- glance/db/__init__.py | 4 +- glance/db/migration.py | 2 +- glance/db/simple/api.py | 46 +-- .../db/sqlalchemy/alembic_migrations/__init__.py | 2 +- glance/db/sqlalchemy/api.py | 35 +- glance/db/sqlalchemy/metadata.py | 11 +- glance/db/sqlalchemy/metadef_api/namespace.py | 2 +- glance/db/sqlalchemy/metadef_api/object.py | 2 +- glance/db/sqlalchemy/metadef_api/property.py | 2 +- glance/db/sqlalchemy/metadef_api/tag.py | 12 +- glance/domain/__init__.py | 9 +- glance/domain/proxy.py | 4 +- glance/hacking/checks.py | 44 +-- glance/image_cache/__init__.py | 20 +- glance/image_cache/drivers/sqlite.py | 15 +- glance/image_cache/drivers/xattr.py | 9 +- glance/image_cache/prefetcher.py | 7 +- glance/locale/de/LC_MESSAGES/glance.po | 32 +- glance/locale/en_GB/LC_MESSAGES/glance.po | 276 +--------------- glance/locale/es/LC_MESSAGES/glance.po | 32 +- glance/locale/fr/LC_MESSAGES/glance.po | 32 +- glance/locale/it/LC_MESSAGES/glance.po | 32 +- glance/locale/ja/LC_MESSAGES/glance.po | 32 +- glance/locale/ko_KR/LC_MESSAGES/glance.po | 93 ++++-- glance/locale/pt_BR/LC_MESSAGES/glance.po | 32 +- glance/locale/ru/LC_MESSAGES/glance.po | 33 +- glance/locale/tr_TR/LC_MESSAGES/glance.po | 32 +- glance/locale/zh_CN/LC_MESSAGES/glance.po | 31 +- glance/locale/zh_TW/LC_MESSAGES/glance.po | 31 +- glance/location.py | 8 +- glance/notifier.py | 17 +- glance/policies/__init__.py | 4 + glance/policies/base.py | 9 +- glance/policies/cache.py | 75 +++++ glance/policies/discovery.py | 33 ++ glance/policies/image.py | 2 +- glance/quota/keystone.py | 26 ++ glance/schema.py | 3 +- glance/scrubber.py | 6 +- .../db/migrations/test_ocata_migrate01.py | 2 +- .../functional/test_healthcheck_middleware.py | 6 +- .../v2/test_legacy_update_cinder_store.py | 30 +- .../functional/v2/test_metadef_resourcetypes.py | 3 +- .../v2/test_property_quota_violations.py | 19 +- .../async_/flows/plugins/test_image_conversion.py | 20 ++ .../unit/common/scripts/image_import/test_main.py | 3 +- .../unit/common/scripts/test_scripts_utils.py | 3 +- playbooks/enable-fips.yaml | 3 + .../added-quota-usage-api-f1914054132f2021.yaml | 9 + .../added-store-detail-api-215810aa85dfbb99.yaml | 6 + releasenotes/notes/cache-api-b806ccfb8c5d9bb6.yaml | 9 + ...ix-md-tag-create-multiple-c04756cf5155983d.yaml | 13 + .../yoga-rc1-release-notes-153932161f52a038.yaml | 24 ++ releasenotes/source/index.rst | 1 + .../locale/en_GB/LC_MESSAGES/releasenotes.po | 8 +- .../source/locale/fr/LC_MESSAGES/releasenotes.po | 63 ---- releasenotes/source/xena.rst | 6 + requirements.txt | 10 +- setup.cfg | 2 + tools/test-setup.sh | 28 ++ tox.ini | 18 +- 199 files changed, 3115 insertions(+), 1873 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index bcdaa8c5..d14c8256 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9 +9 @@ defusedxml>=0.6.0 # PSF -SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8,>=1.0.10 # MIT +SQLAlchemy>=1.3.14 # MIT @@ -36,2 +35,0 @@ pyOpenSSL>=17.1.0 # Apache-2.0 -# Required by openstack.common libraries -six>=1.11.0 # MIT @@ -41,2 +39,2 @@ oslo.i18n>=5.0.0 # Apache-2.0 -oslo.limit>=1.0.0 # Apache-2.0 -oslo.log>=4.3.0 # Apache-2.0 +oslo.limit>=1.4.0 # Apache-2.0 +oslo.log>=4.5.0 # Apache-2.0 @@ -46 +44 @@ oslo.reports>=1.18.0 # Apache-2.0 -oslo.policy>=3.7.0 # Apache-2.0 +oslo.policy>=3.8.1 # Apache-2.0