From: Zack Cerza Date: Tue, 8 Oct 2013 22:07:01 +0000 (-0500) Subject: Move teuthology-report's arg parsing to scripts/ X-Git-Tag: 1.1.0~1819 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=7ab9726737216aab2b241f045ce178be4707a659;p=teuthology.git Move teuthology-report's arg parsing to scripts/ Signed-off-by: Zack Cerza --- diff --git a/scripts/report.py b/scripts/report.py new file mode 100644 index 0000000000..7d51dcd1e3 --- /dev/null +++ b/scripts/report.py @@ -0,0 +1,34 @@ +import argparse +from textwrap import dedent + +import teuthology.report + + +def main(): + teuthology.report.main(parse_args()) + + +def parse_args(): + parser = argparse.ArgumentParser( + description="Submit test results to a web service") + parser.add_argument('-a', '--archive', required=True, + help="The base archive directory") + parser.add_argument('-r', '--run', nargs='*', + help="A run (or list of runs) to submit") + parser.add_argument('--all-runs', action='store_true', + help="Submit all runs in the archive") + parser.add_argument('-R', '--refresh', action='store_true', default=False, + help=dedent("""Re-push any runs already stored on the + server. Note that this may be slow.""")) + parser.add_argument('-s', '--server', + help=dedent(""""The server to post results to, e.g. + http://localhost:8080/ . May also be + specified in ~/.teuthology.yaml as + 'results_server'""")) + parser.add_argument('-n', '--no-save', dest='save', + action='store_false', default=True, + help=dedent("""By default, when submitting all runs, we + remember the last successful submission in a file + called 'last_successful_run'. Pass this flag to disable + that behavior.""")) + return parser.parse_args() diff --git a/setup.py b/setup.py index d926cf2131..b85b859daf 100644 --- a/setup.py +++ b/setup.py @@ -26,7 +26,7 @@ setup( 'teuthology-updatekeys = scripts.updatekeys:main', 'teuthology-coverage = teuthology.coverage:analyze', 'teuthology-results = teuthology.suite:results', - 'teuthology-report = teuthology.report:main', + 'teuthology-report = scripts.report:main', ], }, diff --git a/teuthology/report.py b/teuthology/report.py old mode 100755 new mode 100644 index afecfd1a7f..c37e265e95 --- a/teuthology/report.py +++ b/teuthology/report.py @@ -1,5 +1,3 @@ -#!/usr/bin/env python - import os import yaml import json @@ -7,8 +5,6 @@ import re import httplib2 import urllib import logging -import argparse -from textwrap import dedent from teuthology.config import config @@ -17,6 +13,18 @@ log = logging.getLogger(__name__) logging.basicConfig(level=logging.INFO) +def main(args): + archive_base = os.path.abspath(os.path.expanduser(args.archive)) + reporter = ResultsReporter(archive_base, base_uri=args.server, + save=args.save, refresh=args.refresh) + if args.run and len(args.run) > 1: + reporter.report_runs(args.run) + elif args.run: + reporter.report_run(args.run[0]) + elif args.all_runs: + reporter.report_all_runs() + + class RequestFailedError(RuntimeError): def __init__(self, uri, resp, content): self.uri = uri @@ -364,47 +372,3 @@ def try_push_job_info(job_config, extra_info=None): except RequestFailedError: log.exception("Could not report results to %s" % config.results_server) - - -def parse_args(): - parser = argparse.ArgumentParser( - description="Submit test results to a web service") - parser.add_argument('-a', '--archive', required=True, - help="The base archive directory") - parser.add_argument('-r', '--run', nargs='*', - help="A run (or list of runs) to submit") - parser.add_argument('--all-runs', action='store_true', - help="Submit all runs in the archive") - parser.add_argument('-R', '--refresh', action='store_true', default=False, - help=dedent("""Re-push any runs already stored on the - server. Note that this may be slow.""")) - parser.add_argument('-s', '--server', - help=dedent(""""The server to post results to, e.g. - http://localhost:8080/ . May also be - specified in ~/.teuthology.yaml as - 'results_server'""")) - parser.add_argument('-n', '--no-save', dest='save', - action='store_false', default=True, - help=dedent("""By default, when submitting all runs, we - remember the last successful submission in a file - called 'last_successful_run'. Pass this flag to disable - that behavior.""")) - args = parser.parse_args() - return args - - -def main(): - args = parse_args() - archive_base = os.path.abspath(os.path.expanduser(args.archive)) - reporter = ResultsReporter(archive_base, base_uri=args.server, - save=args.save, refresh=args.refresh) - if args.run and len(args.run) > 1: - reporter.report_runs(args.run) - elif args.run: - reporter.report_run(args.run[0]) - elif args.all_runs: - reporter.report_all_runs() - - -if __name__ == "__main__": - main()