VMware: unable to deploy debian image with liberty

Bug #1506465 reported by Gary Kotton
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
High
Gary Kotton
Liberty
Fix Released
High
Gary Kotton

Bug Description

A debian image loaded in and used in Kilo is unable to be used in liberty.

nicira@htb-1n-eng-dhcp8:~$ nova image-show debian-2.6.32-i686
+-----------------------------+--------------------------------------+
| Property | Value |
+-----------------------------+--------------------------------------+
| OS-EXT-IMG-SIZE:size | 1073741824 |
| created | 2015-10-15T11:19:33Z |
| id | 34d8aa13-fbad-44ad-90c9-4d259abb0a2a |
| metadata hw_vif_model | e1000 |
| metadata vmware_adaptertype | |
| metadata vmware_disktype | preallocated |
| minDisk | 0 |
| minRam | 0 |
| name | debian-2.6.32-i686 |
| progress | 100 |
| status | ACTIVE |
| updated | 2015-10-15T11:19:49Z |
+-----------------------------+--------------------------------------+

The trace from the API is:

2015-10-15 11:25:48.118 ERROR nova.api.openstack.extensions [req-ca854e8c-68fe-47f6-9ce0-c2a5083b417d demo demo] Unexpected exception in API method
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions Traceback (most recent call last):
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/api/openstack/extensions.py", line 478, in wrapped
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions return f(*args, **kwargs)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/api/validation/__init__.py", line 73, in wrapper
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions return func(*args, **kwargs)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/api/validation/__init__.py", line 73, in wrapper
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions return func(*args, **kwargs)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/api/openstack/compute/servers.py", line 602, in create
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions **create_kwargs)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/hooks.py", line 149, in inner
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions rv = f(*args, **kwargs)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/compute/api.py", line 1562, in create
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions check_server_group_quota=check_server_group_quota)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/compute/api.py", line 1162, in _create_instance
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions auto_disk_config, reservation_id, max_count)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/compute/api.py", line 921, in _validate_and_build_base_options
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions image_meta = objects.ImageMeta.from_dict(boot_meta)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/objects/image_meta.py", line 107, in from_dict
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions image_meta.get("properties", {}))
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/objects/image_meta.py", line 459, in from_dict
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions obj._set_attr_from_legacy_names(image_props)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/objects/image_meta.py", line 397, in _set_attr_from_legacy_names
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions setattr(self, "hw_scsi_model", vmware_adaptertype)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/usr/local/lib/python2.7/dist-packages/oslo_versionedobjects/base.py", line 71, in setter
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions field_value = field.coerce(self, name, value)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/usr/local/lib/python2.7/dist-packages/oslo_versionedobjects/fields.py", line 189, in coerce
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions return self._type.coerce(obj, attr, value)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/opt/stack/nova/nova/objects/fields.py", line 272, in coerce
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions return super(SCSIModel, self).coerce(obj, attr, value)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions File "/usr/local/lib/python2.7/dist-packages/oslo_versionedobjects/fields.py", line 284, in coerce
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions raise ValueError(msg)
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions ValueError: Field value is invalid
2015-10-15 11:25:48.118 TRACE nova.api.openstack.extensions

The reason for this is that the default adapter type is set as ""

Gary Kotton (garyk)
Changed in nova:
assignee: nobody → Gary Kotton (garyk)
importance: Undecided → Critical
tags: added: vmware
tags: added: liberty-backport-potential
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/235303

Changed in nova:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/235303
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=70f4299450a260465102f879758f79160223dc29
Submitter: Jenkins
Branch: master

commit 70f4299450a260465102f879758f79160223dc29
Author: Gary Kotton <email address hidden>
Date: Thu Oct 15 05:42:59 2015 -0700

    Image meta: treat legacy vmware adapter type values

    Ensure that legacy metadata vmware_adaptertype values are
    treated correctly. This value could have been set as "" and there
    are existing deployments that use that.

    Change-Id: I28e9ca9075f33ff19855408af02bc454780e7c79
    Closes-bug: #1506465

Changed in nova:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (stable/liberty)

Fix proposed to branch: stable/liberty
Review: https://review.openstack.org/237752

Revision history for this message
Matt Riedemann (mriedem) wrote :

Only affects one virt driver so marking as High rather than Critical.

Changed in nova:
importance: Critical → High
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (stable/liberty)

Reviewed: https://review.openstack.org/237752
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=50db2a54e950c6b58495a538c0f18503e348de42
Submitter: Jenkins
Branch: stable/liberty

commit 50db2a54e950c6b58495a538c0f18503e348de42
Author: Gary Kotton <email address hidden>
Date: Thu Oct 15 05:42:59 2015 -0700

    Image meta: treat legacy vmware adapter type values

    Ensure that legacy metadata vmware_adaptertype values are
    treated correctly. This value could have been set as "" and there
    are existing deployments that use that.

    Change-Id: I28e9ca9075f33ff19855408af02bc454780e7c79
    Closes-bug: #1506465
    (cherry picked from commit 70f4299450a260465102f879758f79160223dc29)

Changed in nova:
status: Fix Committed → Fix Released
Changed in nova:
milestone: none → mitaka-1
Matt Riedemann (mriedem)
tags: added: in-stable-liberty
removed: liberty-backport-potential
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.