summaryrefslogtreecommitdiff
path: root/nova/objects
diff options
context:
space:
mode:
Diffstat (limited to 'nova/objects')
-rw-r--r--nova/objects/external_event.py6
-rw-r--r--nova/objects/image_meta.py9
-rw-r--r--nova/objects/service.py5
3 files changed, 17 insertions, 3 deletions
diff --git a/nova/objects/external_event.py b/nova/objects/external_event.py
index b1acfc4aa0..e17008dade 100644
--- a/nova/objects/external_event.py
+++ b/nova/objects/external_event.py
@@ -33,6 +33,9 @@ EVENT_NAMES = [
# Accelerator Request got bound, tag is ARQ uuid.
# Sent when an ARQ for an instance has been bound or failed to bind.
'accelerator-request-bound',
+
+ # re-image operation has completed from cinder side
+ 'volume-reimaged',
]
EVENT_STATUSES = ['failed', 'completed', 'in-progress']
@@ -50,7 +53,8 @@ class InstanceExternalEvent(obj_base.NovaObject):
# Version 1.2: adds volume-extended event
# Version 1.3: adds power-update event
# Version 1.4: adds accelerator-request-bound event
- VERSION = '1.4'
+ # Version 1.5: adds volume-reimaged event
+ VERSION = '1.5'
fields = {
'instance_uuid': fields.UUIDField(),
diff --git a/nova/objects/image_meta.py b/nova/objects/image_meta.py
index f17f145daf..0ca8ed571f 100644
--- a/nova/objects/image_meta.py
+++ b/nova/objects/image_meta.py
@@ -190,14 +190,17 @@ class ImageMetaProps(base.NovaObject):
# Version 1.31: Added 'hw_emulation_architecture' field
# Version 1.32: Added 'hw_ephemeral_encryption' and
# 'hw_ephemeral_encryption_format' fields
+ # Version 1.33: Added 'hw_locked_memory' field
# NOTE(efried): When bumping this version, the version of
# ImageMetaPropsPayload must also be bumped. See its docstring for details.
- VERSION = '1.32'
+ VERSION = '1.33'
def obj_make_compatible(self, primitive, target_version):
super(ImageMetaProps, self).obj_make_compatible(primitive,
target_version)
target_version = versionutils.convert_version_to_tuple(target_version)
+ if target_version < (1, 33):
+ primitive.pop('hw_locked_memory', None)
if target_version < (1, 32):
primitive.pop('hw_ephemeral_encryption', None)
primitive.pop('hw_ephemeral_encryption_format', None)
@@ -368,6 +371,10 @@ class ImageMetaProps(base.NovaObject):
# image with a network boot image
'hw_ipxe_boot': fields.FlexibleBooleanField(),
+ # string - make sure ``locked`` element is present in the
+ # ``memoryBacking``.
+ 'hw_locked_memory': fields.FlexibleBooleanField(),
+
# There are sooooooooooo many possible machine types in
# QEMU - several new ones with each new release - that it
# is not practical to enumerate them all. So we use a free
diff --git a/nova/objects/service.py b/nova/objects/service.py
index 8885120ddd..05aeb1b538 100644
--- a/nova/objects/service.py
+++ b/nova/objects/service.py
@@ -31,7 +31,7 @@ LOG = logging.getLogger(__name__)
# NOTE(danms): This is the global service version counter
-SERVICE_VERSION = 63
+SERVICE_VERSION = 64
# NOTE(danms): This is our SERVICE_VERSION history. The idea is that any
@@ -222,6 +222,9 @@ SERVICE_VERSION_HISTORY = (
# Version 63: Compute RPC v6.0:
# Add support for VDPA hotplug live migration and suspend/resume
{'compute_rpc': '6.0'},
+ # Version 64: Compute RPC v6.1:
+ # Add reimage_boot_volume parameter to rebuild_instance()
+ {'compute_rpc': '6.1'},
)
# This is used to raise an error at service startup if older than N-1 computes