You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.1 KiB

#!/usr/bin/python2
"""Reexecute parser in scenario and store the result at specified tag.
"""
import optparse, sys
from os import path
import common
from autotest_lib.tko.parsers.test import scenario_base
usage = 'usage: %prog [options] scenario_dirpath parser_result_tag'
parser = optparse.OptionParser(usage=usage)
def main():
(options, args) = parser.parse_args()
if len(args) < 2:
parser.print_help()
sys.exit(1)
scenario_dirpath = path.normpath(args[0])
parser_result_tag = args[1]
if not path.exists(scenario_dirpath) or not path.isdir(scenario_dirpath):
print 'Invalid scenarios_dirpath:', scenario_dirpath
parser.print_help()
sys.exit(1)
tempdir, results_dirpath = scenario_base.load_results_dir(scenario_dirpath)
harness = scenario_base.new_parser_harness(results_dirpath)
try:
parser_result = harness.execute()
except Exception, e:
parser_result = e
scenario_base.store_parser_result(
scenario_dirpath, parser_result, parser_result_tag)
tempdir.clean()
if __name__ == '__main__':
main()