blob: fb4e9820993bb4c195cf81789cb49c24f0588c63 [file] [log] [blame]
Dennis Dmitriev2cbf2352016-11-11 15:34:21 +02001# Copyright 2016 Mirantis, Inc.
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may
4# not use this file except in compliance with the License. You may obtain
5# a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations
13# under the License.
14
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +030015from tcp_tests.managers.execute_commands import ExecuteCommandsMixin
16
17
18class OpenContrailManager(ExecuteCommandsMixin):
Dennis Dmitriev2cbf2352016-11-11 15:34:21 +020019 """docstring for OpenstackManager"""
20
Dmitry Tyzhnenkobc0f8262017-04-28 15:39:26 +030021 __config = None
22 __underlay = None
Dennis Dmitriev2d60c8e2017-05-12 18:34:01 +030023 __openstack_actions = None
Dennis Dmitriev2cbf2352016-11-11 15:34:21 +020024
25 def __init__(self, config, underlay, openstack_deployed):
Dmitry Tyzhnenkobc0f8262017-04-28 15:39:26 +030026 self.__config = config
27 self.__underlay = underlay
Dennis Dmitriev2d60c8e2017-05-12 18:34:01 +030028 self.__openstack_actions = openstack_deployed
Dmitry Tyzhnenkobc0f8262017-04-28 15:39:26 +030029 super(OpenContrailManager, self).__init__(
30 config=config, underlay=underlay)
Dennis Dmitriev2cbf2352016-11-11 15:34:21 +020031
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +030032 def prepare_tests(self, commands):
33 self.execute_commands(commands=commands,
34 label="Prepare Juniper contrail-test")
Dennis Dmitriev2cbf2352016-11-11 15:34:21 +020035
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +030036 def run_tests(self, tags='', features=''):
Dennis Dmitriev2cbf2352016-11-11 15:34:21 +020037 cmd = "salt 'ctl01*' grains.get fqdn|tail -n1"
Dmitry Tyzhnenkobc0f8262017-04-28 15:39:26 +030038 result = self.__underlay.check_call(
39 cmd, host=self.__config.salt.salt_master_host)
Dennis Dmitriev2cbf2352016-11-11 15:34:21 +020040
41 ctl01_name = result['stdout'].strip()
42
Dmitry Tyzhnenkobc0f8262017-04-28 15:39:26 +030043 cmd = '. /etc/contrail/openstackrc; ' \
44 'cd /opt/contrail-test; ./run_tests.sh'
Dennis Dmitriev2cbf2352016-11-11 15:34:21 +020045 if tags != '':
46 cmd += ' --tags ' + tags
47
48 if features != '':
49 cmd += ' --features ' + features
50
Dmitry Tyzhnenkobc0f8262017-04-28 15:39:26 +030051 self.__underlay.check_call(
Dennis Dmitriev2cbf2352016-11-11 15:34:21 +020052 cmd,
53 node_name=ctl01_name)