|
@@ -896,10 +896,8 @@ class GCEInstance(BaseInstance):
|
|
|
return None
|
|
return None
|
|
|
for disk in self._gce_instance['disks']:
|
|
for disk in self._gce_instance['disks']:
|
|
|
if 'boot' in disk and disk['boot']:
|
|
if 'boot' in disk and disk['boot']:
|
|
|
- boot_disk = GCEVolume(
|
|
|
|
|
- self._provider,
|
|
|
|
|
- self._provider.get_gce_resource_data(disk['source']))
|
|
|
|
|
- return boot_disk.source_image
|
|
|
|
|
|
|
+ return self._provider.get_gce_resource_data(
|
|
|
|
|
+ disk['source']).get('sourceImage')
|
|
|
return None
|
|
return None
|
|
|
|
|
|
|
|
@property
|
|
@property
|
|
@@ -958,12 +956,10 @@ class GCEInstance(BaseInstance):
|
|
|
return
|
|
return
|
|
|
for disk in self._gce_instance['disks']:
|
|
for disk in self._gce_instance['disks']:
|
|
|
if 'boot' in disk and disk['boot']:
|
|
if 'boot' in disk and disk['boot']:
|
|
|
- boot_disk = GCEVolume(
|
|
|
|
|
- self._provider,
|
|
|
|
|
- self._provider.get_gce_resource_data(disk['source']))
|
|
|
|
|
image_body = {
|
|
image_body = {
|
|
|
'name': name,
|
|
'name': name,
|
|
|
- 'sourceDisk': boot_disk.id
|
|
|
|
|
|
|
+ 'sourceDisk': self._provider.get_gce_resource_data(
|
|
|
|
|
+ disk['source']).get('selfLink')
|
|
|
}
|
|
}
|
|
|
operation = (self._provider
|
|
operation = (self._provider
|
|
|
.gce_compute
|
|
.gce_compute
|
|
@@ -1508,12 +1504,15 @@ class GCEVolume(BaseVolume):
|
|
|
|
|
|
|
|
@property
|
|
@property
|
|
|
def source(self):
|
|
def source(self):
|
|
|
- return (self._volume.get('sourceSnapshot') or
|
|
|
|
|
- self._volume.get('sourceImage'))
|
|
|
|
|
-
|
|
|
|
|
- @property
|
|
|
|
|
- def source_image(self):
|
|
|
|
|
- return self._volume.get('sourceImage')
|
|
|
|
|
|
|
+ if 'sourceSnapshot' in self._volume:
|
|
|
|
|
+ return GCESnapshot(self._provider,
|
|
|
|
|
+ self._provider.get_gce_resource_data(
|
|
|
|
|
+ self._volume.get('sourceSnapshot')))
|
|
|
|
|
+ if 'sourceImage' in self._volume:
|
|
|
|
|
+ return GCEMachineImage(self._provider,
|
|
|
|
|
+ self._provider.get_gce_resource_data(
|
|
|
|
|
+ self._volume.get('sourceImage')))
|
|
|
|
|
+ return None
|
|
|
|
|
|
|
|
@property
|
|
@property
|
|
|
def attachments(self):
|
|
def attachments(self):
|