The disk templates are going away for the instances, so the new
definition of being diskless is to be actually without any disks
attached.

Signed-off-by: Aaron Karper <[email protected]>
---
 lib/cmdlib/cluster.py            | 5 ++---
 lib/cmdlib/instance.py           | 4 ++--
 lib/cmdlib/instance_operation.py | 2 +-
 lib/cmdlib/instance_storage.py   | 2 +-
 4 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/lib/cmdlib/cluster.py b/lib/cmdlib/cluster.py
index 8b2e3ae..14af210 100644
--- a/lib/cmdlib/cluster.py
+++ b/lib/cmdlib/cluster.py
@@ -3178,20 +3178,19 @@ class LUClusterVerifyGroup(LogicalUnit, _VerifyErrors):
     node_disks_dev_inst_only = {}
     diskless_instances = set()
     nodisk_instances = set()
-    diskless = constants.DT_DISKLESS
 
     for nuuid in node_uuids:
       node_inst_uuids = list(itertools.chain(node_image[nuuid].pinst,
                                              node_image[nuuid].sinst))
       diskless_instances.update(uuid for uuid in node_inst_uuids
-                                if instanceinfo[uuid].disk_template == 
diskless)
+                                if not instanceinfo[uuid].disks)
       disks = [(inst_uuid, disk)
                for inst_uuid in node_inst_uuids
                for disk in self.cfg.GetInstanceDisks(inst_uuid)]
 
       if not disks:
         nodisk_instances.update(uuid for uuid in node_inst_uuids
-                                if instanceinfo[uuid].disk_template != 
diskless)
+                                if instanceinfo[uuid].disks)
         # No need to collect data
         continue
 
diff --git a/lib/cmdlib/instance.py b/lib/cmdlib/instance.py
index ca856cc..58e1924 100644
--- a/lib/cmdlib/instance.py
+++ b/lib/cmdlib/instance.py
@@ -1370,7 +1370,7 @@ class LUInstanceCreate(LogicalUnit):
     @param iobj: instance object
 
     """
-    if iobj.disk_template != constants.DT_DISKLESS and not self.adopt_disks:
+    if iobj.disks and not self.adopt_disks:
       disks = self.cfg.GetInstanceDisks(iobj.uuid)
       if self.op.mode == constants.INSTANCE_CREATE:
         os_image = objects.GetOSImage(self.op.osparams)
@@ -3235,7 +3235,7 @@ class LUInstanceSetParams(LogicalUnit):
                                      " --no-wait-for-sync given.",
                                      errors.ECODE_INVAL)
 
-    if self.op.disks and self.instance.disk_template == constants.DT_DISKLESS:
+    if self.op.disks and not self.instance.disks:
       raise errors.OpPrereqError("Disk operations not supported for"
                                  " diskless instances", errors.ECODE_INVAL)
 
diff --git a/lib/cmdlib/instance_operation.py b/lib/cmdlib/instance_operation.py
index 585a704..048b1e4 100644
--- a/lib/cmdlib/instance_operation.py
+++ b/lib/cmdlib/instance_operation.py
@@ -352,7 +352,7 @@ class LUInstanceReinstall(LogicalUnit):
     CheckNodeOnline(self, instance.primary_node, "Instance primary node"
                     " offline, cannot reinstall")
 
-    if instance.disk_template == constants.DT_DISKLESS:
+    if not instance.disks:
       raise errors.OpPrereqError("Instance '%s' has no disks" %
                                  self.op.instance_name,
                                  errors.ECODE_INVAL)
diff --git a/lib/cmdlib/instance_storage.py b/lib/cmdlib/instance_storage.py
index f12e160..7c0e032 100644
--- a/lib/cmdlib/instance_storage.py
+++ b/lib/cmdlib/instance_storage.py
@@ -917,7 +917,7 @@ class LUInstanceRecreateDisks(LogicalUnit):
     if not self.op.iallocator:
       CheckNodeOnline(self, primary_node)
 
-    if instance.disk_template == constants.DT_DISKLESS:
+    if not instance.disks:
       raise errors.OpPrereqError("Instance '%s' has no disks" %
                                  self.op.instance_name, errors.ECODE_INVAL)
 
-- 
2.1.0.rc2.206.gedb03e5

Reply via email to