We contentedly announce the release of: glance 29.0.0 This release is part of the dalmatian 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 28.0.1..29.0.0 -------------------------------- 806e5146 api-ref: add 'compressed' container_format 2ae69b51 Fixed typo in discovery.py 39e407e9 Documentation: fix default value for rbd_store_chunk_size c4a0a94e Remove unrecheable code 48e6471e Imported Translations from Zanata 1f3e66fb Add metadef value for stateless firmware ca40d49f Add new wait logic for functional test of add location API acb8ed5b Refresh Glance example configs for dalmatian m3 f2cda858 Release notes for Dalmatian Milestone 3 d8de63a5 Add iso file format inspector 273825d0 Remove default override for RBAC config options ea131dd1 Revert image state to queued if conversion fails 93ae58c6 Auto-detect qemu-img qed support for unit tests c5e29b6c Make separate schema for new location API 5d5f570f Remove location_strategy functionality 6f4d9c43 Bump Images API version to 2.17 cedf499e Add api-ref and documentation for new location apis 5369a825 Add new get location api b83f38cf Add functional tests for new add-location API 4281558d Add new add location api a0b7650c Add Location Import task flow ee7e96f0 Do not set_acls if store is not associated to glance node 38a2828e Imported Translations from Zanata 57f0c93d Revert "Fix import job to provide valid disk-formats list to tempest" 629ea06a Fix /healthcheck url typo in glance-api-paste 726b186e zuul: Drop openstack-tox-functional-py38-fips job 5f36dbb0 Add safety check and detection support to FI tool 8318da1d Fix: optimized upload volume in Cinder store 6459f761 Revert "Make import jobs non-voting" 867d1dd8 Add releasenote for CVE-2024-32498 fix 9df48a30 Increase timeout for tempest-integrated-storage-import job b75f3e4a Make import jobs non-voting 22d59d93 Add file format detection to format_inspector f596965b Add QED format detection to format_inspector 797e30e6 Reject unsafe qcow and vmdk files e18ebdd1 Add VMDK safety check 58a9e15a Extend format_inspector for QCOW safety 937f7d3e Reject qcow files with data-file attributes 244ccb68 Fix import job to provide valid disk-formats list to tempest 006ef41c Deprecate the "metadata_encryption_key" option 3471d6b7 Release notes for Dalmatian Milestone 2 1c523cf9 Make location URL compatible with cinder backend 74acd821 Drop sqlparse 1b11e6e3 docs: Correct grammar nit 06c727cf Fix 500 if multi-tenant swift is used dfbfdad7 Move all periodic tips jobs from py38/39 to py311/312 95abad11 Make functional-py312 voting and add it to the gate 3f49730e Imported Translations from Zanata 9f4754cd Add non-voting functional-py312 job 0812f970 Refresh Glance example configs for dalmatian m1 547a4813 Release notes for Dalmatian Milestone 1 32ee57cc Fix broken glance-cache-prefetcher utility ef58d77b Stop using deprecated defusedxml.cElementTree 205ca333 Remove sendfile support 1708fd7c reno: Update master for unmaintained/zed 24351229 Remove glossary a7c878ee Remove allow_additional_image_properties b38a567a Replace remaining usage of [DEFAULT] sql_connection 4b4e36f1 Change DB migration constant to 2024_2 3a821c41 Architecture docs: Fix list indentation 835e7f36 Remove unused run_sql_cmd 513311f9 Remove SQLAlchemy tips jobs ccd41b15 doc: remove trailing dot from hypervisor_type list 3f7b5165 Cinder: Remove ambiguous warning 70d18c86 Docs: be more explicit regarding oslo_limit.endpoint_id 3d21c1eb doc: Remove non-existing auth parameters of glance-cache.conf 46a95f77 Remove the digest_algorithm option d9838247 Update master for stable/2024.1 2862eaef refectory: fix comments b8f0bd4e reno: Update master for xena Unmaintained status 61071447 reno: Update master for wallaby Unmaintained status 749c8443 reno: Update master for victoria Unmaintained status 81772be8 Docs: Add info about the cinder store 5cf15b68 Use constants for common rules cab97a62 Do not load api-paste.ini using oslo.config 6a0b1455 Remove ubuntu focal job Diffstat (except docs and test files) ------------------------------------- .zuul.yaml | 226 +- api-ref/source/v2/images-images-v2.inc | 80 + .../source/v2/images-parameters-descriptions.inc | 15 +- api-ref/source/v2/images-parameters.yaml | 16 + .../source/v2/samples/add-location-request.json | 7 + .../v2/samples/locations-list-detail-response.json | 8 + .../v2/samples/schemas-image-show-response.json | 3 +- .../v2/samples/schemas-images-list-response.json | 3 +- etc/glance-api-paste.ini | 2 +- etc/glance-api.conf | 241 +- etc/glance-cache.conf | 112 +- etc/glance-manage.conf | 40 +- etc/glance-scrubber.conf | 125 +- etc/metadefs/compute-libvirt-image.json | 5 + glance/api/middleware/version_negotiation.py | 1 + glance/api/policy.py | 8 +- glance/api/v2/discovery.py | 21 +- glance/api/v2/images.py | 220 +- glance/api/v2/policy.py | 6 + glance/api/v2/router.py | 15 + glance/api/v2/tasks.py | 3 +- glance/api/versions.py | 5 +- .../async_/flows/_internal_plugins/copy_image.py | 2 +- .../async_/flows/_internal_plugins/web_download.py | 1 - glance/async_/flows/api_image_import.py | 2 - glance/async_/flows/base_import.py | 10 + glance/async_/flows/location_import.py | 351 ++ glance/async_/flows/ovf_process.py | 7 +- glance/async_/flows/plugins/image_conversion.py | 96 +- .../async_/flows/plugins/inject_image_metadata.py | 1 - glance/async_/taskflow_executor.py | 4 + glance/cmd/cache_prefetcher.py | 2 + glance/cmd/control.py | 1 - glance/common/client.py | 40 +- glance/common/config.py | 81 +- glance/common/format_inspector.py | 354 +- glance/common/location_strategy/__init__.py | 141 - glance/common/location_strategy/location_order.py | 36 - glance/common/location_strategy/store_type.py | 144 - glance/common/scripts/utils.py | 9 + glance/common/store_utils.py | 9 +- glance/common/utils.py | 14 +- glance/common/wsgi.py | 2 +- glance/common/wsgi_app.py | 3 +- glance/db/migration.py | 2 +- glance/domain/__init__.py | 2 +- glance/locale/de/LC_MESSAGES/glance.po | 17 +- glance/locale/en_GB/LC_MESSAGES/glance.po | 385 +- glance/locale/es/LC_MESSAGES/glance.po | 17 +- glance/locale/fr/LC_MESSAGES/glance.po | 17 +- glance/locale/it/LC_MESSAGES/glance.po | 17 +- glance/locale/ja/LC_MESSAGES/glance.po | 17 +- glance/locale/ko_KR/LC_MESSAGES/glance.po | 17 +- glance/locale/pt_BR/LC_MESSAGES/glance.po | 17 +- glance/locale/ru/LC_MESSAGES/glance.po | 16 +- glance/locale/tr_TR/LC_MESSAGES/glance.po | 16 +- glance/locale/zh_CN/LC_MESSAGES/glance.po | 13 +- glance/locale/zh_TW/LC_MESSAGES/glance.po | 14 +- glance/location.py | 26 +- glance/opts.py | 5 - glance/policies/base.py | 28 +- glance/policies/discovery.py | 4 +- glance/policies/image.py | 65 +- glance/policies/metadef.py | 57 +- glance/policies/tasks.py | 18 +- .../async_/flows/plugins/test_image_conversion.py | 231 +- .../unit/async_/flows/test_location_import.py | 530 +++ .../unit/common/scripts/test_scripts_utils.py | 27 + .../add-new-add-location-api-acd459299976b4a5.yaml | 21 + ...add-new-get-locations-api-83c4b6dc077efc5f.yaml | 7 + ...9-disallow-qcow2-datafile-5d5ff4dbd590c911.yaml | 17 + ...dalmatian-metadef-changes-272f78e019a15ff1.yaml | 12 + ...-milestone-1-releasenotes-45150bc42aead80d.yaml | 6 + ...-milestone-2-releasenotes-a35ccfe1cbf95fce.yaml | 7 + .../dalmatian-milestone-3-76c9712862b6c889.yaml | 13 + ...eprecate-digest_algorithm-7cab4ef4240c522f.yaml | 10 + ...ata_encryption_key_option-8c6076ca6e361f92.yaml | 15 + .../do-not-load-paste-ini-1ec473693037ee5b.yaml | 6 + .../notes/fix-set-acls-bc17b5e125425c9b.yaml | 7 + ...compatible-with-locations-1f3e938ff7e11c7d.yaml | 9 + ...ditional_image_properties-ae33902e7967661f.yaml | 4 + ...on-strategy-functionality-b1b562e68608a6f8.yaml | 4 + releasenotes/source/2024.1.rst | 6 + releasenotes/source/index.rst | 1 + .../locale/en_GB/LC_MESSAGES/releasenotes.po | 336 +- .../source/locale/fr/LC_MESSAGES/releasenotes.po | 63 - releasenotes/source/victoria.rst | 2 +- releasenotes/source/wallaby.rst | 2 +- releasenotes/source/xena.rst | 2 +- releasenotes/source/zed.rst | 2 +- requirements.txt | 5 +- setup.cfg | 4 +- test-requirements.txt | 1 - tools/test_format_inspector.py | 7 + tox.ini | 2 +- 127 files changed, 5298 insertions(+), 6014 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index 98552add..3daf1052 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2 +2 @@ pbr>=3.1.1 # Apache-2.0 -defusedxml>=0.6.0 # PSF +defusedxml>=0.7.1 # PSF @@ -10 +9,0 @@ WebOb>=1.8.1 # MIT -sqlparse>=0.2.2 # BSD @@ -39 +38 @@ oslo.reports>=1.18.0 # Apache-2.0 -oslo.policy>=3.11.0 # Apache-2.0 +oslo.policy>=4.4.0 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index 3123bfd9..dc04b9d0 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -23 +22,0 @@ psycopg2>=2.8.4 # LGPL/ZPL -pysendfile>=2.0.0;sys_platform!='win32' # MIT