summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDonal Lafferty <donal.lafferty@citrix.com>2011-07-27 15:40:13 +0100
committerDonal Lafferty <donal.lafferty@citrix.com>2011-07-27 15:40:13 +0100
commit151ecddc0227ff9e779712532971fac8a2c79c7b (patch)
tree9a83054df0058f3ec5523bbfd47b32227a05c8ca
parentd19f53cfe958f63667ed429403bb50cbd97246dd (diff)
Address merge review concerns.
-rw-r--r--nova/virt/xenapi/vm_utils.py2
-rw-r--r--nova/virt/xenapi/vmops.py28
2 files changed, 18 insertions, 12 deletions
diff --git a/nova/virt/xenapi/vm_utils.py b/nova/virt/xenapi/vm_utils.py
index d0ffb13da..5d6fe0825 100644
--- a/nova/virt/xenapi/vm_utils.py
+++ b/nova/virt/xenapi/vm_utils.py
@@ -520,7 +520,7 @@ class VMHelper(HelperBase):
# DISK restores
LOG.debug(_("Fetching image %(image)s") % locals())
LOG.debug(_("Image Type: %s"), ImageType.to_string(image_type))
- sr_ref = None
+
if image_type == ImageType.DISK_ISO:
sr_ref = safe_find_iso_sr(session)
LOG.debug(_("ISO: Found sr possibly containing the ISO image"))
diff --git a/nova/virt/xenapi/vmops.py b/nova/virt/xenapi/vmops.py
index 1830ce18d..7ac923933 100644
--- a/nova/virt/xenapi/vmops.py
+++ b/nova/virt/xenapi/vmops.py
@@ -238,6 +238,21 @@ class VMOps(object):
raise vm_create_error
+ # Add disks to VM
+ self._attach_disks(instance, disk_image_type, vm_ref, first_vdi_ref,
+ vdis)
+
+ # Alter the image before VM start for, e.g. network injection
+ if FLAGS.xenapi_inject_image:
+ VMHelper.preconfigure_instance(self._session, instance,
+ first_vdi_ref, network_info)
+
+ self.create_vifs(vm_ref, instance, network_info)
+ self.inject_network_info(instance, network_info, vm_ref)
+ return vm_ref
+
+ def _attach_disks(self, instance, disk_image_type, vm_ref, first_vdi_ref,
+ vdis):
# device 0 reserved for RW disk
userdevice = 0
@@ -253,7 +268,7 @@ class VMOps(object):
VMHelper.create_vbd(session=self._session, vm_ref=vm_ref,
vdi_ref=first_vdi_ref, userdevice=userdevice, bootable=False)
- # device 1 reserved for rescue disk so use '2', we've used '0'
+ # device 1 reserved for rescue disk and we've used '0'
userdevice = 2
VMHelper.create_cd_vbd(session=self._session, vm_ref=vm_ref,
vdi_ref=cd_vdi_ref, userdevice=userdevice, bootable=True)
@@ -264,7 +279,7 @@ class VMOps(object):
VMHelper.create_vbd(session=self._session, vm_ref=vm_ref,
vdi_ref=first_vdi_ref, userdevice=userdevice, bootable=True)
# set user device to next free value
- # userdevice 1 is reserved for rescue, we've used '0'
+ # userdevice 1 is reserved for rescue and we've used '0'
userdevice = 2
# Attach any other disks
@@ -278,15 +293,6 @@ class VMOps(object):
bootable=False)
userdevice += 1
- # Alter the image before VM start for, e.g. network injection
- if FLAGS.xenapi_inject_image:
- VMHelper.preconfigure_instance(self._session, instance,
- first_vdi_ref, network_info)
-
- self.create_vifs(vm_ref, instance, network_info)
- self.inject_network_info(instance, network_info, vm_ref)
- return vm_ref
-
def _spawn(self, instance, vm_ref):
"""Spawn a new instance."""
LOG.debug(_('Starting VM %s...'), vm_ref)