1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2024-12-24 15:15:22 +00:00

Host gets list of all storages active/inactive. If there is some inactive storages it gives error. But it coulde be inactive. It is normal. Changing the behaviour of getting list of storages.

This commit is contained in:
catborise 2018-07-20 14:04:13 +03:00
parent e7ecf29359
commit e387c3a21d
4 changed files with 9 additions and 10 deletions

View file

@ -37,7 +37,7 @@ def create_instance(request, compute_id):
compute.password,
compute.type)
storages = sorted(conn.get_storages())
storages = sorted(conn.get_storages(only_actives=True))
networks = sorted(conn.get_networks())
instances = conn.get_instances()
cache_modes = sorted(conn.get_cache_modes().items())

View file

@ -356,10 +356,11 @@ class wvmConnect(object):
"""Return KVM capabilities."""
return util.is_kvm_available(self.get_cap_xml())
def get_storages(self):
def get_storages(self, only_actives=False):
storages = []
for pool in self.wvm.listStoragePools():
storages.append(pool)
if not only_actives:
for pool in self.wvm.listDefinedStoragePools():
storages.append(pool)
return storages

View file

@ -31,11 +31,9 @@ class wvmCreate(wvmConnect):
Function return all images on all storages
"""
images = []
storages = self.get_storages()
storages = self.get_storages(only_actives=True)
for storage in storages:
stg = self.get_storage(storage)
if not stg.isActive():
continue
try:
stg.refresh(0)
except:
@ -93,7 +91,7 @@ class wvmCreate(wvmConnect):
return 'raw'
def get_volume_path(self, volume):
storages = self.get_storages()
storages = self.get_storages(only_actives=True)
for storage in storages:
stg = self.get_storage(storage)
if stg.info()[0] != 0:

View file

@ -303,7 +303,7 @@ class wvmInstance(wvmConnect):
disk.insert(2, src_media)
return True
storages = self.get_storages()
storages = self.get_storages(only_actives=True)
for storage in storages:
stg = self.get_storage(storage)
if stg.info()[0] != 0:
@ -597,7 +597,7 @@ class wvmInstance(wvmConnect):
def get_iso_media(self):
iso = []
storages = self.get_storages()
storages = self.get_storages(only_actives=True)
for storage in storages:
stg = self.get_storage(storage)
if stg.info()[0] != 0: