aboutsummaryrefslogtreecommitdiffstats
path: root/qtip
diff options
context:
space:
mode:
Diffstat (limited to 'qtip')
-rw-r--r--qtip/cli/commands/cmd_metric.py7
-rw-r--r--qtip/cli/commands/cmd_plan.py7
-rw-r--r--qtip/cli/commands/cmd_qpi.py7
-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__.py43
-rw-r--r--qtip/runner/base.py (renamed from qtip/reporter/base.py)6
-rw-r--r--qtip/util/logger.py9
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)