Added Test create/list/delete Savanna node group templates

This commit is contained in:
Sergey Galkin 2013-09-11 18:09:19 +04:00
parent b6fabd07cd
commit d949d4a82e
3 changed files with 56 additions and 43 deletions

View File

@ -27,10 +27,8 @@ class SavannaClientManager(nmanager.OfficialClientManager):
Manager that provides access to the Savanna python client for Manager that provides access to the Savanna python client for
calling Savanna API. calling Savanna API.
""" """
#TBD should be moved to nailgun or config file
client = None savanna_url = 'http://10.20.0.131:8386/v1.0'
insecure = None
api_host = None
def __init__(self): def __init__(self):
""" """
@ -45,7 +43,6 @@ class SavannaClientManager(nmanager.OfficialClientManager):
] ]
def _get_savanna_client(self, username=None, password=None): def _get_savanna_client(self, username=None, password=None):
savanna_url = 'http://10.20.0.131:8386/v1.0'
keystone = self._get_identity_client() keystone = self._get_identity_client()
token = keystone.auth_token token = keystone.auth_token
auth_url = self.config.identity.uri auth_url = self.config.identity.uri
@ -58,7 +55,7 @@ class SavannaClientManager(nmanager.OfficialClientManager):
api_key=password, api_key=password,
project_name=tenant_name, project_name=tenant_name,
auth_url=auth_url, auth_url=auth_url,
savanna_url=savanna_url) savanna_url=self.savanna_url)
class SavannaOfficialClientTest(nmanager.OfficialClientTest): class SavannaOfficialClientTest(nmanager.OfficialClientTest):
@ -67,8 +64,12 @@ class SavannaOfficialClientTest(nmanager.OfficialClientTest):
class SavannaSanityChecksTest(SavannaOfficialClientTest): class SavannaSanityChecksTest(SavannaOfficialClientTest):
""" """
Base class for openstack sanity tests Base class for openstack sanity tests for Savanna
""" """
#TBD should be movede to nailgun or config file
plugin = 'vanilla'
plugin_version = '1.1.2'
def _create_node_group_template_and_get_id( def _create_node_group_template_and_get_id(
self, client, name, plugin_name, self, client, name, plugin_name,
hadoop_version, description, hadoop_version, description,
@ -88,8 +89,8 @@ class SavannaSanityChecksTest(SavannaOfficialClientTest):
self._create_node_group_template_and_get_id( self._create_node_group_template_and_get_id(
client, client,
'tt-dn', 'tt-dn',
'vanilla', self.plugin,
'1.1.2', self.plugin_version,
description='test node group template', description='test node group template',
volumes_per_node=0, volumes_per_node=0,
volume_size=1, volume_size=1,
@ -106,8 +107,8 @@ class SavannaSanityChecksTest(SavannaOfficialClientTest):
self._create_node_group_template_and_get_id( self._create_node_group_template_and_get_id(
client, client,
'tt', 'tt',
'vanilla', self.plugin,
'1.1.2', self.plugin_version,
description='test node group template', description='test node group template',
volumes_per_node=0, volumes_per_node=0,
volume_size=0, volume_size=0,
@ -123,8 +124,8 @@ class SavannaSanityChecksTest(SavannaOfficialClientTest):
self._create_node_group_template_and_get_id( self._create_node_group_template_and_get_id(
client, client,
'dd', 'dd',
'vanilla', self.plugin,
'1.1.2', self.plugin_version,
description='test node group template', description='test node group template',
volumes_per_node=0, volumes_per_node=0,
volume_size=0, volume_size=0,
@ -137,18 +138,20 @@ class SavannaSanityChecksTest(SavannaOfficialClientTest):
return node_group_template_tt_id return node_group_template_tt_id
def _delete_node_group_template(self, client, id): def _delete_node_group_template(self, client, id):
LOG.debug('id - %s' % id)
client.node_group_templates.delete(id) client.node_group_templates.delete(id)
def _list_node_group_template(self, client):
client.node_group_templates.list()
def _list_cluster_templates(self, client): def _list_cluster_templates(self, client):
cluster_templates = client.cluster_templates.list() cluster_templates = client.cluster_templates.list()
return cluster_templates return cluster_templates
def _create_cluster_templates(self, client): def _create_cluster_templates(self, client):
cluster_templates = client.cluster_templates.create('name', 'vanilla', cluster_templates = client.cluster_templates.create(
'1.1.2', 'descr', 'name', plugin,
cluster_configs, self.plugin_version, 'descr',
node_groups, cluster_configs,
anti_affinity) node_groups,
anti_affinity)
return cluster_templates return cluster_templates

View File

@ -44,59 +44,70 @@ class SanitySavannaTests(savanna.SavannaSanityChecksTest):
@attr(type=['sanity', 'fuel']) @attr(type=['sanity', 'fuel'])
def test_01_create_node_group_template(self): def test_01_create_node_group_template(self):
"""Test create/delete node group template """Test create/list/delete Savanna node group templates
Target component: Savanna Target component: Savanna
Scenario: Scenario:
1. Create node group template tt dn 1. Create node group tasktracker and datanode template
2. Create node group template tt 2. Create node group tasktracker template
3. Create node group template dn 3. Create node group datanode template
4. Delete node group template tt dn 4. List node group templates
5. Delete node group template tt 5. Delete node group tasktracker and datanode template
6. Delete node group template dn 6. Delete node group tasktracker template
7. Delete node group datanode template
Duration: 20 s. Duration: 20 s.
""" """
fail_msg = 'Fail create node group template tt+dn' fail_msg = 'Fail create node group tasktracker and datanode template'
create_nodes_templates_tt_dn_resp = self.verify( create_nodes_templates_tt_dn_resp = self.verify(
20, 20,
self._create_node_group_template_tt_dn_id, self._create_node_group_template_tt_dn_id,
1, fail_msg, 1, fail_msg,
"Create node group template", "Create node group tasktracker and datanode template",
self.savanna_client) self.savanna_client)
fail_msg = 'Fail create node group template tt'
fail_msg = 'Fail create node group tasktracker template'
create_nodes_templates_tt_resp = self.verify( create_nodes_templates_tt_resp = self.verify(
20, 20,
self._create_node_group_template_tt_id, self._create_node_group_template_tt_id,
2, fail_msg, 2, fail_msg,
"Create node group template", "Create node group tasktracker template",
self.savanna_client) self.savanna_client)
fail_msg = 'Fail create node group template dn' fail_msg = 'Fail create node group datanode template'
create_nodes_templates_dn_resp = self.verify( create_nodes_templates_dn_resp = self.verify(
20, 20,
self._create_node_group_template_dn_id, self._create_node_group_template_dn_id,
3, fail_msg, 3, fail_msg,
"Create node group template", "Create node group datanode template",
self.savanna_client) self.savanna_client)
fail_msg = 'Fail delete node group template tt+dn' fail_msg = 'Fail list group template'
self.verify( self.verify(
20, 20,
self._delete_node_group_template, self._list_node_group_template,
4, fail_msg, 4, fail_msg,
"Delete node group template", "List group templates",
self.savanna_client, create_nodes_templates_tt_dn_resp) self.savanna_client)
fail_msg = 'Fail delete node group template tt'
fail_msg = 'Fail delete node group tasktracker and datanode template'
self.verify( self.verify(
20, 20,
self._delete_node_group_template, self._delete_node_group_template,
5, fail_msg, 5, fail_msg,
"Delete node group template", "Delete node group template",
self.savanna_client, create_nodes_templates_tt_resp) self.savanna_client, create_nodes_templates_tt_dn_resp)
fail_msg = 'Fail delete node group template dn' fail_msg = 'Fail delete node group tasktracker template'
self.verify( self.verify(
20, 20,
self._delete_node_group_template, self._delete_node_group_template,
6, fail_msg, 6, fail_msg,
"Delete node group template", "Delete node group tasktracker template",
self.savanna_client, create_nodes_templates_tt_resp)
fail_msg = 'Fail delete node group datanode template'
self.verify(
20,
self._delete_node_group_template,
7, fail_msg,
"Delete node group datanode template",
self.savanna_client, create_nodes_templates_dn_resp) self.savanna_client, create_nodes_templates_dn_resp)

View File

@ -15,7 +15,7 @@ requirements=[
'nose==1.3.0', 'nose==1.3.0',
'oslo.config==1.1.1', 'oslo.config==1.1.1',
'paramiko==1.10.1', 'paramiko==1.10.1',
#'pbr==0.5.21', 'pbr==0.5.21',
'pika==0.9.13', 'pika==0.9.13',
'prettytable==0.7.2', 'prettytable==0.7.2',
'pyOpenSSL==0.13', 'pyOpenSSL==0.13',
@ -40,7 +40,6 @@ requirements=[
setuptools.setup( setuptools.setup(
dependency_links=['http://tarballs.openstack.org/python-savannaclient/python-savannaclient-master.tar.gz#egg=savannaclient-0.1',],
name='ostf_tests', name='ostf_tests',
version='0.1', version='0.1',