From: Jose Perez Carranza <jose.perez.carra...@linux.intel.com> Add option that allows using –create-wiki under setup option,this potion takes date and project as a parameter and search for tests runs and generates the wiki report data in a file.
Signed-off-by: Jose Perez Carranza <jose.perez.carra...@linux.intel.com> --- testopia_update.py | 78 ++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 58 insertions(+), 20 deletions(-) diff --git a/testopia_update.py b/testopia_update.py index b438cff..0015d69 100755 --- a/testopia_update.py +++ b/testopia_update.py @@ -8,6 +8,7 @@ import ConfigParser from external.testopia import Testopia from testopia_update.product import get_products, get_product_class +from testopia_update.utils.wikimaker import create_wiki DEFAULT_CONFIG_FILE = "testopia_update.config" DEFAULT_STORE_LOCATION = "/tmp/testopia_update" @@ -153,6 +154,10 @@ def get_args(): dest="clone_templates", help='clone templates from one branch to \ another or same branch (only available) \ with setup action', const='Y', nargs='?') + parser.add_argument('--create-wiki', required=False, + dest="create_wiki", help='create a wiki page for the final report of \ + the QA test cycle (only available \ + with setup action)', const='Y', nargs='?') parser.add_argument('--new-branch', required=False, dest="new_branch", help='New branch to clone the Templates') @@ -204,34 +209,67 @@ if __name__ == '__main__': args.product_name = 'Dummy' product = get_product_class(args.product_name, products) summary = 'TRTEMP_' + args.project_version + templates = product.get_test_run_list(None, summary) for t in templates: print ("%s - %s " % (t['run_id'], t['summary'])) + sys.exit(0) if args.action == 'setup': - setup_opts = ['clone_templates', 'project_version','branch_name', - 'old_project_version', 'product_name'] + if args.clone_templates: + setup_opts = ['clone_templates', 'project_version','branch_name', + 'old_project_version', 'product_name'] - load_opts(args, setup_opts, opts) + load_opts(args, setup_opts, opts) + + product = get_product_class(args.product_name, products) + test_plan = product.get_test_plan(args.branch_name) + temp_summary = 'TRTEMP_' + args.old_project_version + temp_list = product.get_test_run_list(test_plan,temp_summary) + if not temp_list: + logger.error("%s: No templates found with %s string on %s" + % (sys.argv[0], temp_summary, args.branch_name)) + + for tr in temp_list: + if args.new_branch and args.new_branch != args.branch_name: + kwargs['new_branch'] = args.new_branch + + new_template = product.clone_template(tr, + args.old_project_version,args.project_version, + **kwargs) + + logger.info("%s: Template was created with (%d), Summary (%s)" + % (sys.argv[0], new_template['run_id'], + new_template['summary'])) + + elif args.create_wiki: + setup_opts = ['create_wiki', 'project_date', 'project_version'] + + load_opts(args, setup_opts, opts) + + args.product_name = 'Dummy' + product = get_product_class(args.product_name, products) + summary = args.project_date + '_' + args.project_version + + templates = product.get_test_run_list(None, summary) + wikivars = '' + wikivars_list = [] + idx=0 + for t in templates: + idx += 1 + plan = product.get_test_plan_by_id(t['plan_id']) + prod = testopia.product_lookup_name_by_id(plan['product_id']) + env = product.get_environment_by_id(t['environment_id']) + env_name = env['name'].replace(' ','_') + var = str(idx) + '_' + str(prod['name']) + '_' + env_name + wikivars_list.append(var) + wikivars += ''.join(["{{#vardefine:", var, '| ', + str(t['run_id']), '}}', '\n' ]) + + print(wikivars) + create_wiki(wikivars, wikivars_list) - product = get_product_class(args.product_name, products) - test_plan = product.get_test_plan(args.branch_name) - temp_summary = 'TRTEMP_' + args.old_project_version - temp_list = product.get_test_run_list(test_plan,temp_summary) - if not temp_list: - logger.error("%s: No templates found with %s string on %s" - % (sys.argv[0], temp_summary, args.branch_name)) - - for tr in temp_list: - if args.new_branch and args.new_branch != args.branch_name: - kwargs['new_branch'] = args.new_branch - - new_template = product.clone_template(tr, args.old_project_version, - args.project_version, **kwargs) - logger.info("%s: Template was created with (%d), Summary (%s)" - % (sys.argv[0], new_template['run_id'], - new_template['summary'])) sys.exit(0) -- 2.11.0 -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto