diff options
Diffstat (limited to 'qtip')
-rw-r--r-- | qtip/cli/commands/cmd_metric.py | 7 | ||||
-rw-r--r-- | qtip/cli/commands/cmd_plan.py | 7 | ||||
-rw-r--r-- | qtip/cli/commands/cmd_qpi.py | 7 | ||||
-rw-r--r-- | qtip/reporter/console.py (renamed from qtip/reporter/console/__init__.py) | 14 | ||||
-rw-r--r-- | qtip/reporter/templates/timeline.j2 (renamed from qtip/reporter/console/timeline.j2) | 0 | ||||
-rw-r--r-- | qtip/runner/__init__.py | 43 | ||||
-rw-r--r-- | qtip/runner/base.py (renamed from qtip/reporter/base.py) | 6 | ||||
-rw-r--r-- | qtip/util/logger.py | 9 |
8 files changed, 38 insertions, 55 deletions
diff --git a/qtip/cli/commands/cmd_metric.py b/qtip/cli/commands/cmd_metric.py index aa4df1f4..b6035e2d 100644 --- a/qtip/cli/commands/cmd_metric.py +++ b/qtip/cli/commands/cmd_metric.py @@ -27,6 +27,13 @@ def cmd_list(ctx): pass +@cli.command('show', help='View details of a Metric') +@click.argument('name') +@pass_context +def show(ctx, name): + pass + + @cli.command('run', help='Run tests to run Performance Metrics') @click.argument('name') @pass_context diff --git a/qtip/cli/commands/cmd_plan.py b/qtip/cli/commands/cmd_plan.py index c1dd7cf6..64c702d3 100644 --- a/qtip/cli/commands/cmd_plan.py +++ b/qtip/cli/commands/cmd_plan.py @@ -35,6 +35,13 @@ def list(ctx): pass +@cli.command('show', help='View details of a Plan') +@click.argument('name') +@pass_context +def show(ctx, name): + pass + + @cli.command('run', help='Execute a Plan') @click.argument('name') @pass_context diff --git a/qtip/cli/commands/cmd_qpi.py b/qtip/cli/commands/cmd_qpi.py index f33f0104..5fc9bec8 100644 --- a/qtip/cli/commands/cmd_qpi.py +++ b/qtip/cli/commands/cmd_qpi.py @@ -28,6 +28,13 @@ def cmd_list(ctx): pass +@cli.command('show', help='View details of a QPI') +@click.argument('name') +@pass_context +def show(ctx, name): + pass + + @cli.command('run', help='Run performance tests for the specified QPI') @click.argument('name') @pass_context diff --git a/qtip/reporter/console/__init__.py b/qtip/reporter/console.py index 02d63288..24c98e74 100644 --- a/qtip/reporter/console/__init__.py +++ b/qtip/reporter/console.py @@ -7,9 +7,17 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +from qtip.base import BaseActor -from qtip.reporter.base import BaseReporter +class ConsoleReporter(BaseActor): + """ + report benchmark result to console + """ + def __init__(self, config, parent=None): + super(ConsoleReporter, self).__init__(config, parent=parent) + # TODO(yujunz) remove PoC code + self._fmt = "{title}: {description}" -class ConsoleReporter(BaseReporter): - """report result to console""" + def render(self, var_dict): + return self._fmt.format(**var_dict) diff --git a/qtip/reporter/console/timeline.j2 b/qtip/reporter/templates/timeline.j2 index 9c18a996..9c18a996 100644 --- a/qtip/reporter/console/timeline.j2 +++ b/qtip/reporter/templates/timeline.j2 diff --git a/qtip/runner/__init__.py b/qtip/runner/__init__.py index 52c43a14..e69de29b 100644 --- a/qtip/runner/__init__.py +++ b/qtip/runner/__init__.py @@ -1,43 +0,0 @@ -############################################################################## -# Copyright (c) 2016 ZTE Corp and others. -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - -from qtip.base.constant import PkgName, BaseProp -from qtip.base.error import NotFoundError -from qtip.collector.stdout import StdoutCollector -from qtip.driver.random import RandomDriver -from qtip.reporter.console import ConsoleReporter - - -class Runner(object): - def __init__(self, spec, config=None): - if config is None: - config = spec[BaseProp.CONFIG] - - driver_name = config[BaseProp.DRIVER] - collector_name = config[BaseProp.COLLECTOR] - reporter_name = config[BaseProp.REPORTER] - - # TODO(yujunz) dynamically load modules by name - - if driver_name == 'random': - self.driver = RandomDriver() - else: - raise NotFoundError(driver_name, heystack=PkgName.DRIVER) - - if collector_name == 'stdout': - self.collector = StdoutCollector() - else: - raise NotFoundError(collector_name, - heystack=PkgName.COLLECTOR) - - if reporter_name == 'console': - self.reporter = ConsoleReporter() - else: - raise NotFoundError(reporter_name, - heystack=PkgName.REPORTER) diff --git a/qtip/reporter/base.py b/qtip/runner/base.py index b931d14d..a86626d9 100644 --- a/qtip/reporter/base.py +++ b/qtip/runner/base.py @@ -8,7 +8,5 @@ ############################################################################## -class BaseReporter(object): - """benchmark result reporter""" - def __init__(self, collector=None): - self.collector = collector +class BaseRunner(object): + """benchmark task runner""" diff --git a/qtip/util/logger.py b/qtip/util/logger.py index d5e76a64..a7847dfc 100644 --- a/qtip/util/logger.py +++ b/qtip/util/logger.py @@ -27,11 +27,11 @@ import os class Logger(object): - file_path = '/var/log' formatter = logging.Formatter('%(asctime)s - %(name)s - ' '%(levelname)s - %(message)s') - def __init__(self, logger_name): + def __init__(self, logger_name, file_path=None): + self.file_path = '/var/log' if not file_path else file_path IF_DEBUG = os.getenv('IF_DEBUG') @@ -59,10 +59,9 @@ class Logger(object): class QtipLogger(Logger): - file_path = '{}/qtip/logs'.format(os.environ['HOME']) - def __init__(self, logger_name): + self.file_path = '{}/qtip/logs'.format(os.environ['HOME']) if not os.path.exists(self.file_path): os.makedirs(self.file_path) - super(QtipLogger, self).__init__(logger_name) + super(QtipLogger, self).__init__(logger_name, self.file_path) |