Files
ironic/releasenotes/notes/bug-2099275-glance-image-properties-check-2a11337c9e517a5c.yaml
Doug Goldstein 05734cfc95 fix glance metadata layout
The code here builds a dictionary from a glance v2 image object that
roughly resembles the glance v2 image object. The current behavior
nests the 'properties' set on the image under it's own 'properties' key
resulting in the image properties never being seen by the Ironic code.
The breakage results from the change from glanceclient to the SDK which
changed the shape of the returned object. The glanceclient object shape
was that of FakeImage while the SDK returns a Resource based object
which includes attributes for all possible fields which are defined at
the top-level of the object. Since the tests run against a different
value they did not cature the failure. Just changing to the SDK object
results in us copying all these new values to the properties dict which
is definitely not the intention. For maximum compatibility to backport
this filters any value not set from being set into properties and sets
the rest. The broken path is any user of get_image_properties()
(both copies from common/images and deploy_utils) checking for user
supplied properties.

Closes-Bug: 2099953
Change-Id: I1842e2651fd2bd8455646db9a3a80c3b9ece5c97
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025-03-06 20:45:58 -06:00

11 lines
435 B
YAML

---
fixes:
- |
When changing from glanceclient to OpenStack SDK to communicate with
Glance, a bug was introduced reading image properties causing the
Anaconda deploy interface to be unable to use Glance images. Other
deploy interfaces continued to function but could have resulted in
some properties not taking affect.
See `bug 2099275 <https://bugs.launchpad.net/ironic/+bug/2099953>`_ for
more details.