Revision 4b2f38dd lib/cmdlib.py

b/lib/cmdlib.py
3175 3175
      if not hasattr(self.op, attr):
3176 3176
        setattr(self.op, attr, None)
3177 3177

  
3178
    # cheap checks, mostly valid constants given
3179

  
3178 3180
    # verify creation mode
3179 3181
    if self.op.mode not in (constants.INSTANCE_CREATE,
3180 3182
                            constants.INSTANCE_IMPORT):
3181 3183
      raise errors.OpPrereqError("Invalid instance creation mode '%s'" %
3182 3184
                                 self.op.mode)
3185

  
3183 3186
    # disk template and mirror node verification
3184 3187
    if self.op.disk_template not in constants.DISK_TEMPLATES:
3185 3188
      raise errors.OpPrereqError("Invalid disk template name")
3186 3189

  
3190
    if self.op.hypervisor is None:
3191
      self.op.hypervisor = self.cfg.GetHypervisorType()
3192

  
3193
    enabled_hvs = self.cfg.GetClusterInfo().enabled_hypervisors
3194
    if self.op.hypervisor not in enabled_hvs:
3195
      raise errors.OpPrereqError("Selected hypervisor (%s) not enabled in the"
3196
                                 " cluster (%s)" % (self.op.hypervisor,
3197
                                  ",".join(enabled_hvs)))
3198

  
3187 3199
    #### instance parameters check
3188 3200

  
3189 3201
    # instance name verification
......
3348 3360
      raise errors.OpPrereqError("Cluster does not support lvm-based"
3349 3361
                                 " instances")
3350 3362

  
3351
    # cheap checks (from the config only)
3352

  
3353
    if self.op.hypervisor is None:
3354
      self.op.hypervisor = self.cfg.GetHypervisorType()
3355

  
3356
    enabled_hvs = self.cfg.GetClusterInfo().enabled_hypervisors
3357
    if self.op.hypervisor not in enabled_hvs:
3358
      raise errors.OpPrereqError("Selected hypervisor (%s) not enabled in the"
3359
                                 " cluster (%s)" % (self.op.hypervisor,
3360
                                  ",".join(enabled_hvs)))
3361

  
3362
    # costly checks (from nodes)
3363 3363

  
3364 3364
    if self.op.mode == constants.INSTANCE_IMPORT:
3365 3365
      src_node = self.op.src_node

Also available in: Unified diff