vmware attributes -- fix for None value after upgrade
Change-Id: Iec17bf2e76674ae1a619b647382fcd72555a1bce Closes-Bug: #1450049
This commit is contained in:
parent
30f5385805
commit
03c8868270
|
@ -138,6 +138,9 @@ class InstallationInfo(object):
|
|||
release = cluster.release
|
||||
nodes_num = NodeCollection.filter_by(
|
||||
None, cluster_id=cluster.id).count()
|
||||
vmware_attributes_editable = None
|
||||
if cluster.vmware_attributes:
|
||||
vmware_attributes_editable = cluster.vmware_attributes.editable
|
||||
cluster_info = {
|
||||
'id': cluster.id,
|
||||
'nodes_num': nodes_num,
|
||||
|
@ -153,7 +156,7 @@ class InstallationInfo(object):
|
|||
'attributes': self.get_attributes(cluster.attributes.editable,
|
||||
self.attributes_white_list),
|
||||
'vmware_attributes': self.get_attributes(
|
||||
cluster.vmware_attributes.editable,
|
||||
vmware_attributes_editable,
|
||||
self.vmware_attributes_white_list
|
||||
),
|
||||
'net_provider': cluster.net_provider,
|
||||
|
|
|
@ -22,6 +22,7 @@ from nailgun.db.sqlalchemy.models import cluster as cluster_model
|
|||
from nailgun.db.sqlalchemy.models import plugins
|
||||
from nailgun.objects import Cluster
|
||||
from nailgun.objects import ReleaseCollection
|
||||
from nailgun.objects import VmwareAttributes
|
||||
from nailgun.settings import settings
|
||||
from nailgun.statistics.fuel_statistics.installation_info \
|
||||
import InstallationInfo
|
||||
|
@ -86,6 +87,28 @@ class TestInstallationInfo(BaseTestCase):
|
|||
result = info.get_attributes(attrs, info.attributes_white_list)
|
||||
self.assertDictEqual({}, result)
|
||||
|
||||
def test_clusters_info_no_vmware_attributes_exception(self):
|
||||
self.env.upload_fixtures(['openstack'])
|
||||
info = InstallationInfo()
|
||||
release = ReleaseCollection.filter_by(None, operating_system='CentOS')
|
||||
nodes_params = [
|
||||
{'roles': ['compute']},
|
||||
{'roles': ['compute']},
|
||||
{'roles': ['controller']}
|
||||
]
|
||||
self.env.create(
|
||||
cluster_kwargs={
|
||||
'release_id': release[0].id,
|
||||
'mode': consts.CLUSTER_MODES.ha_full,
|
||||
'net_provider': consts.CLUSTER_NET_PROVIDERS.nova_network},
|
||||
nodes_kwargs=nodes_params
|
||||
)
|
||||
self.env.create_node({'status': consts.NODE_STATUSES.discover})
|
||||
cluster = self.env.clusters[0]
|
||||
VmwareAttributes.delete(cluster.vmware_attributes)
|
||||
self.env.db.flush()
|
||||
self.assertNotRaises(AttributeError, info.get_clusters_info)
|
||||
|
||||
def test_clusters_info(self):
|
||||
self.env.upload_fixtures(['openstack'])
|
||||
info = InstallationInfo()
|
||||
|
|
Loading…
Reference in New Issue