Merge "Fix scaling validation error"
This commit is contained in:
commit
32d4c744f7
|
@ -364,9 +364,14 @@ def check_resize(cluster, r_node_groups):
|
|||
raise ex.InvalidReferenceException(
|
||||
_("Cluster doesn't contain node group with name '%s'")
|
||||
% ng['name'])
|
||||
check_node_group_basic_fields(cluster.plugin_name,
|
||||
cluster.hadoop_version,
|
||||
ng_map[ng['name']])
|
||||
node_group = ng_map[ng['name']]
|
||||
if node_group.get('node_group_template_id'):
|
||||
ng_tmpl_id = node_group['node_group_template_id']
|
||||
check_node_group_template_exists(ng_tmpl_id)
|
||||
ng_tmp = api.get_node_group_template(ng_tmpl_id).to_wrapped_dict()
|
||||
check_node_group_basic_fields(cluster.plugin_name,
|
||||
cluster.hadoop_version,
|
||||
ng_tmp['node_group_template'])
|
||||
|
||||
|
||||
def check_add_node_groups(cluster, add_node_groups):
|
||||
|
|
|
@ -63,11 +63,15 @@ class TestScalingValidation(u.ValidationTestCase):
|
|||
self.assertEqual(expected_message, message)
|
||||
raise e
|
||||
|
||||
@mock.patch('sahara.service.api.v10.get_node_group_template')
|
||||
@mock.patch('sahara.utils.openstack.nova.client')
|
||||
@mock.patch("sahara.service.api.OPS")
|
||||
def test_check_cluster_scaling_resize_ng(self, ops, nova_client):
|
||||
def test_check_cluster_scaling_resize_ng(self, ops, nova_client, get_ngt):
|
||||
ops.get_engine_type_and_version.return_value = "direct.1.1"
|
||||
ng1 = tu.make_ng_dict('ng', '42', ['namenode'], 1)
|
||||
ng1 = tu.make_ng_dict('ng', '42', ['namenode'], 1,
|
||||
node_group_template_id='aaa')
|
||||
ng2 = tu.make_ng_dict('ng', '42', ['namenode'], 1,
|
||||
resource=True)
|
||||
cluster = tu.create_cluster("cluster1", "tenant1", "fake", "0.1",
|
||||
[ng1],
|
||||
status=c_u.CLUSTER_STATUS_VALIDATING,
|
||||
|
@ -122,6 +126,7 @@ class TestScalingValidation(u.ValidationTestCase):
|
|||
client = mock.Mock()
|
||||
nova_client.return_value = client
|
||||
client.flavors.list.return_value = []
|
||||
get_ngt.return_value = ng2
|
||||
|
||||
self._assert_check_scaling(
|
||||
data=data, cluster=cluster,
|
||||
|
|
|
@ -31,7 +31,8 @@ def create_cluster(name, tenant, plugin, version, node_groups, **kwargs):
|
|||
|
||||
|
||||
def make_ng_dict(name, flavor, processes, count, instances=None,
|
||||
volumes_size=None, node_configs=None, **kwargs):
|
||||
volumes_size=None, node_configs=None, resource=False,
|
||||
**kwargs):
|
||||
node_configs = node_configs or {}
|
||||
instances = instances or []
|
||||
dct = {'id': uuidutils.generate_uuid(), 'name': name,
|
||||
|
@ -43,6 +44,8 @@ def make_ng_dict(name, flavor, processes, count, instances=None,
|
|||
'open_ports': [], 'is_proxy_gateway': False,
|
||||
'volume_local_to_instance': False}
|
||||
dct.update(kwargs)
|
||||
if resource:
|
||||
return r.NodeGroupTemplateResource(dct)
|
||||
return dct
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue