Check for network already created k8
[yardstick.git] / yardstick / cmd / cli.py
index beaa187..0bc7c16 100644 (file)
@@ -7,10 +7,11 @@
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
 
-'''
+"""
 Command-line interface to yardstick
-'''
+"""
 
+from __future__ import absolute_import
 import logging
 import os
 import sys
@@ -19,24 +20,23 @@ from pkg_resources import get_distribution
 from argparse import RawDescriptionHelpFormatter
 from oslo_config import cfg
 
-from yardstick import _init_logging, LOG
+from yardstick import _init_logging, _LOG_STREAM_HDLR
 from yardstick.cmd.commands import task
 from yardstick.cmd.commands import runner
 from yardstick.cmd.commands import scenario
 from yardstick.cmd.commands import testcase
 from yardstick.cmd.commands import plugin
 from yardstick.cmd.commands import env
+from yardstick.cmd.commands import report
+from yardstick.common import import_tools
+
 
 CONF = cfg.CONF
 cli_opts = [
     cfg.BoolOpt('debug',
                 short='d',
                 default=False,
-                help='increase output verbosity to debug'),
-    cfg.BoolOpt('verbose',
-                short='v',
-                default=False,
-                help='increase output verbosity to info')
+                help='increase output verbosity to debug')
 ]
 CONF.register_cli_opts(cli_opts)
 
@@ -55,8 +55,9 @@ def find_config_files(path_list):
     return None
 
 
-class YardstickCLI():
-    '''Command-line interface to yardstick'''
+@import_tools.decorator_banned_modules
+class YardstickCLI(object):   # pragma: no cover
+    """Command-line interface to yardstick"""
 
     # Command categories
     categories = {
@@ -65,7 +66,8 @@ class YardstickCLI():
         'scenario': scenario.ScenarioCommands,
         'testcase': testcase.TestcaseCommands,
         'plugin': plugin.PluginCommands,
-        'env': env.EnvCommand
+        'env': env.EnvCommand,
+        'report': report.ReportCommands
     }
 
     def __init__(self):
@@ -74,7 +76,7 @@ class YardstickCLI():
             get_distribution('yardstick').version
 
     def _find_actions(self, subparsers, actions_module):
-        '''find action methods'''
+        """find action methods"""
         # Find action methods inside actions_module and
         # add them to the command parser.
         # The 'actions_module' argument may be a class
@@ -93,7 +95,7 @@ class YardstickCLI():
             subparser.set_defaults(func=callback)
 
     def _add_command_parsers(self, categories, subparsers):
-        '''add commands to command-line parser'''
+        """add commands to command-line parser"""
         for category in categories:
             command_object = categories[category]()
             desc = command_object.__doc__ or ''
@@ -109,7 +111,7 @@ class YardstickCLI():
 
         # register subcommands to parse additional command line arguments
         def parser(subparsers):
-            self._add_command_parsers(YardstickCLI.categories, subparsers)
+            self._add_command_parsers(self.categories, subparsers)
 
         category_opt = cfg.SubCommandOpt("category",
                                          title="Command categories",
@@ -131,19 +133,16 @@ class YardstickCLI():
     def _handle_global_opts(self):
 
         _init_logging()
-        if CONF.verbose:
-            LOG.setLevel(logging.INFO)
-
         if CONF.debug:
-            LOG.setLevel(logging.DEBUG)
+            _LOG_STREAM_HDLR.setLevel(logging.DEBUG)
 
-    def _dispath_func_notask(self):
+    def _dispatch_func_notask(self):
 
         # dispatch to category parser
         func = CONF.category.func
         func(CONF.category)
 
-    def _dispath_func_task(self, task_id):
+    def _dispatch_func_task(self, task_id):
 
         # dispatch to category parser
         func = CONF.category.func
@@ -155,7 +154,7 @@ class YardstickCLI():
         CONF.unregister_opts(self.opts)
 
     def main(self, argv):    # pragma: no cover
-        '''run the command line interface'''
+        """run the command line interface"""
         try:
             self._register_cli_opt()
 
@@ -163,12 +162,12 @@ class YardstickCLI():
 
             self._handle_global_opts()
 
-            self._dispath_func_notask()
+            self._dispatch_func_notask()
         finally:
             self._clear_config_opts()
 
     def api(self, argv, task_id):    # pragma: no cover
-        '''run the api interface'''
+        """run the api interface"""
         try:
             self._register_cli_opt()
 
@@ -176,6 +175,6 @@ class YardstickCLI():
 
             self._handle_global_opts()
 
-            self._dispath_func_task(task_id)
+            self._dispatch_func_task(task_id)
         finally:
             self._clear_config_opts()