X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=yardstick%2Fcmd%2Fcli.py;h=05bf8f06fbdb5f96f52da381fffd8f725947878b;hb=f07176fddfce0e919cc791092cdd968fdf661346;hp=ee8d1c529c9ffaf893978270b9d6a1f6d39fcd18;hpb=c0694a411eb2f3f6daa7271afce7e688beff805d;p=yardstick.git diff --git a/yardstick/cmd/cli.py b/yardstick/cmd/cli.py index ee8d1c529..05bf8f06f 100644 --- a/yardstick/cmd/cli.py +++ b/yardstick/cmd/cli.py @@ -11,6 +11,7 @@ Command-line interface to yardstick ''' +from __future__ import absolute_import import logging import os import sys @@ -19,11 +20,13 @@ from pkg_resources import get_distribution from argparse import RawDescriptionHelpFormatter from oslo_config import cfg +from yardstick import _init_logging, LOG 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 CONF = cfg.CONF cli_opts = [ @@ -62,7 +65,8 @@ class YardstickCLI(): 'runner': runner.RunnerCommands, 'scenario': scenario.ScenarioCommands, 'testcase': testcase.TestcaseCommands, - 'plugin': plugin.PluginCommands + 'plugin': plugin.PluginCommands, + 'env': env.EnvCommand } def __init__(self): @@ -127,15 +131,12 @@ class YardstickCLI(): def _handle_global_opts(self): - # handle global opts - logger = logging.getLogger('yardstick') - logger.setLevel(logging.WARNING) - + _init_logging() if CONF.verbose: - logger.setLevel(logging.INFO) + LOG.setLevel(logging.INFO) if CONF.debug: - logger.setLevel(logging.DEBUG) + LOG.setLevel(logging.DEBUG) def _dispath_func_notask(self): @@ -156,24 +157,26 @@ class YardstickCLI(): def main(self, argv): # pragma: no cover '''run the command line interface''' - self._register_cli_opt() - - self._load_cli_config(argv) + try: + self._register_cli_opt() - self._handle_global_opts() + self._load_cli_config(argv) - self._dispath_func_notask() + self._handle_global_opts() - self._clear_config_opts() + self._dispath_func_notask() + finally: + self._clear_config_opts() def api(self, argv, task_id): # pragma: no cover '''run the api interface''' - self._register_cli_opt() - - self._load_cli_config(argv) + try: + self._register_cli_opt() - self._handle_global_opts() + self._load_cli_config(argv) - self._dispath_func_task(task_id) + self._handle_global_opts() - self._clear_config_opts() + self._dispath_func_task(task_id) + finally: + self._clear_config_opts()