Merge "Add missing 'obj_make_compatible' in RequestSpec object"
This commit is contained in:
commit
2a406af1b0
@ -12,6 +12,7 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
|
from oslo_utils import versionutils
|
||||||
from oslo_versionedobjects import fields
|
from oslo_versionedobjects import fields
|
||||||
|
|
||||||
from cinder import objects
|
from cinder import objects
|
||||||
@ -88,6 +89,17 @@ class RequestSpec(base.CinderObject, base.CinderObjectDictCompat,
|
|||||||
|
|
||||||
return spec_obj
|
return spec_obj
|
||||||
|
|
||||||
|
def obj_make_compatible(self, primitive, target_version):
|
||||||
|
"""Make an object representation compatible with target version."""
|
||||||
|
super(RequestSpec, self).obj_make_compatible(primitive, target_version)
|
||||||
|
target_version = versionutils.convert_version_to_tuple(target_version)
|
||||||
|
added_fields = (((1, 1), ('group_id', 'group_backend')),
|
||||||
|
((1, 2), ('resource_backend')))
|
||||||
|
for version, remove_fields in added_fields:
|
||||||
|
if target_version < version:
|
||||||
|
for obj_field in remove_fields:
|
||||||
|
primitive.pop(obj_field, None)
|
||||||
|
|
||||||
|
|
||||||
@base.CinderObjectRegistry.register
|
@base.CinderObjectRegistry.register
|
||||||
class VolumeProperties(base.CinderObject, base.CinderObjectDictCompat):
|
class VolumeProperties(base.CinderObject, base.CinderObjectDictCompat):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user