diff options
Diffstat (limited to 'nova/objects/fields.py')
-rw-r--r-- | nova/objects/fields.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/nova/objects/fields.py b/nova/objects/fields.py index d8cb10f700..cae1ea4a4d 100644 --- a/nova/objects/fields.py +++ b/nova/objects/fields.py @@ -260,6 +260,14 @@ class BlockDeviceType(BaseNovaEnum): ALL = (CDROM, DISK, FLOPPY, FS, LUN) +class BlockDeviceEncryptionFormatType(BaseNovaEnum): + PLAIN = 'plain' + LUKS = 'luks' + LUKSv2 = 'luksv2' + + ALL = (PLAIN, LUKS, LUKSv2) + + class ConfigDrivePolicy(BaseNovaEnum): OPTIONAL = "optional" MANDATORY = "mandatory" @@ -608,6 +616,16 @@ class VIFModel(BaseNovaEnum): return super(VIFModel, self).coerce(obj, attr, value) +class VIOMMUModel(BaseNovaEnum): + + INTEL = 'intel' + SMMUV3 = 'smmuv3' + VIRTIO = 'virtio' + AUTO = 'auto' + + ALL = (INTEL, SMMUV3, VIRTIO, AUTO) + + class VMMode(BaseNovaEnum): """Represents possible vm modes for instances. @@ -1197,6 +1215,10 @@ class BlockDeviceTypeField(BaseEnumField): AUTO_TYPE = BlockDeviceType() +class BlockDeviceEncryptionFormatTypeField(BaseEnumField): + AUTO_TYPE = BlockDeviceEncryptionFormatType() + + class ConfigDrivePolicyField(BaseEnumField): AUTO_TYPE = ConfigDrivePolicy() @@ -1289,6 +1311,10 @@ class VIFModelField(BaseEnumField): AUTO_TYPE = VIFModel() +class VIOMMUModelField(BaseEnumField): + AUTO_TYPE = VIOMMUModel() + + class VMModeField(BaseEnumField): AUTO_TYPE = VMMode() @@ -1353,6 +1379,14 @@ class InstancePowerStateField(BaseEnumField): AUTO_TYPE = InstancePowerState() +class NetworkModelField(AutoTypedField): + AUTO_TYPE = NetworkModel() + + +class NetworkVIFModelField(AutoTypedField): + AUTO_TYPE = NetworkVIFModel() + + class ListOfListsOfStringsField(AutoTypedField): AUTO_TYPE = List(List(fields.String())) |