代码拉取完成,页面将自动刷新
同步操作将从 openEuler/oecp 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
# -*- encoding=utf-8 -*-
"""
# **********************************************************************************
# Copyright (c) Huawei Technologies Co., Ltd. 2020-2020. All rights reserved.
# [oecp] is licensed under the Mulan PSL v1.
# You can use this software according to the terms and conditions of the Mulan PSL v1.
# You may obtain a copy of Mulan PSL v1 at:
# http://license.coscl.org.cn/MulanPSL
# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR
# PURPOSE.
# See the Mulan PSL v1 for more details.
# Author:
# Create: 2021-09-07
# Description: from markdown to json
# **********************************************************************************
"""
import os
import sys
import logging
import argparse
from oecp.result.compress import compress_report
from oecp.utils.logger import init_logger
from oecp.main.plan import Plan
def init_args():
"""
init args
:return:
"""
parser = argparse.ArgumentParser()
default_conf_path = os.path.join(os.path.dirname(__file__), "oecp/conf")
default_plan_path = os.path.join(default_conf_path, "plan/all.json")
default_category_path = os.path.join(default_conf_path, "category/category.json")
default_perf_baseline_file = os.path.join(
default_conf_path, "performance/baseline-openEuler-20.03-LTS-SP1-everything-aarch64-dvd.iso.performance.json")
default_work_dir = "/tmp/oecp"
default_output_file = "/tmp/oecp/"
parser.add_argument("-v", "--version", action='version', version='oecp 1.0')
parser.add_argument("-d", "--debuginfo", help="read compare files from plan json", action='store_true')
parser.add_argument("-n", "--parallel", type=int, dest="parallel", help="compare parallel, in order if 0")
parser.add_argument("-w", "--work-dir", type=str, dest="work_dir", default=default_work_dir, help="work root dir")
parser.add_argument("-p", "--plan", type=str, dest="plan_path", default=default_plan_path, help="compare plan path")
parser.add_argument("-c", "--category", type=str, dest="category_path", default=default_category_path,
help="package category path")
parser.add_argument("-b", "--baseline", type=str, dest="perf_baseline_file", default=default_perf_baseline_file,
help="baseline performance result")
parser.add_argument("-f", "--format", type=str, dest="output_format", default="csv", help="result export format")
parser.add_argument("-o", "--output", type=str, dest="output_file", default=default_output_file,
help="result output path")
parser.add_argument("compare_files", metavar="file", type=str, nargs='*', help="compare files")
parser.add_argument("--submit", help="submit job to compass-ci", type=str, dest="submit", default='at')
parser.set_defaults(func=do_compress)
return parser.parse_args()
def do_compress(params):
compress_report(params.output_file, params.output_file)
if __name__ == "__main__":
init_logger()
logger = logging.getLogger("oecp")
args = init_args()
logger.info(f"--plan: {args.plan_path}")
logger.info(f"--category: {args.category_path}")
logger.info(f"--baseline: {args.perf_baseline_file}")
logger.info(f"--work_dir: {args.work_dir}")
logger.info(f"--format: {args.output_format}")
logger.info(f"--output: {args.output_file}")
plan = Plan(args.plan_path)
if args.parallel is not None:
plan.parallel = args.parallel
logger.info(f"--parallel: {plan.parallel}")
_ = not os.path.exists(args.work_dir) and os.mkdir(args.work_dir)
_ = not os.path.exists(args.output_file) and os.mkdir(args.output_file)
from oecp.main.factory import Factory
if args.debuginfo:
logger.info(f"start compare {plan.get_base()} with {plan.get_other()}")
product_a = Factory.create(plan.get_base(), args, plan.get_type())
product_b = Factory.create(plan.get_other(), args, plan.get_type())
else:
cmp_files_num = len(args.compare_files)
if cmp_files_num != 2:
logger.error(f"The compare files are {args.compare_files}")
logger.error(f"The number of input compare files is {cmp_files_num}, but need 2")
sys.exit(1)
logger.info(f"start compare {args.compare_files[0]} with {args.compare_files[1]}")
product_a = Factory.create(args.compare_files[0], args, "none")
product_b = Factory.create(args.compare_files[1], args, "none")
result = product_a.compare(product_b, plan)
result.export(args.output_file, args.perf_baseline_file, args.output_format, args.compare_files[1])
args.func(args)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。