X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Ftools%2Fpresentation%2Fgenerator_CPTA.py;h=69a8df6afd4b54f429d9f337fc7982bf91e262a4;hb=d0e06e9bc675e87f84af534af822cf2490e0337a;hp=2e9abde13c865e5df8c1f71ebddee1bb25dbb49b;hpb=4eda23fc4270aa7db20b0f4579b10370e76593df;p=csit.git diff --git a/resources/tools/presentation/generator_CPTA.py b/resources/tools/presentation/generator_CPTA.py index 2e9abde13c..69a8df6afd 100644 --- a/resources/tools/presentation/generator_CPTA.py +++ b/resources/tools/presentation/generator_CPTA.py @@ -362,12 +362,29 @@ def _generate_all_charts(spec, input_data): :type input_data: InputData """ - csv_table = list() + job_name = spec.cpta["data"].keys()[0] + + builds_lst = list() + for build in spec.input["builds"][job_name]: + status = build["status"] + if status != "failed" and status != "not found": + builds_lst.append(str(build["build"])) + + # Get "build ID": "date" dict: + build_dates = dict() + for build in builds_lst: + try: + build_dates[build] = \ + input_data.metadata(job_name, build)["generated"][:14] + except KeyError: + pass + # Create the header: - builds = spec.cpta["data"].values()[0] - builds_lst = [str(build) for build in range(builds[0], builds[-1] + 1)] + csv_table = list() header = "Build Number:," + ",".join(builds_lst) + '\n' csv_table.append(header) + header = "Build Date:," + ",".join(build_dates.values()) + '\n' + csv_table.append(header) results = list() for chart in spec.cpta["plots"]: @@ -424,9 +441,8 @@ def _generate_all_charts(spec, input_data): idx += 1 # Generate the chart: - period_name = "Daily" if period == 1 else \ - "Weekly" if period < 20 else "Monthly" - chart["layout"]["title"] = chart["title"].format(period=period_name) + chart["layout"]["xaxis"]["title"] = \ + chart["layout"]["xaxis"]["title"].format(job=job_name) _generate_chart(traces, chart["layout"], file_name="{0}-{1}-{2}{3}".format( @@ -443,23 +459,23 @@ def _generate_all_charts(spec, input_data): file_handler.writelines(csv_table) txt_table = None - with open("{0}.csv".format("cpta-trending"), 'rb') as csv_file: + with open("{0}.csv".format(file_name), 'rb') as csv_file: csv_content = csv.reader(csv_file, delimiter=',', quotechar='"') - header = True + line_nr = 0 for row in csv_content: if txt_table is None: txt_table = prettytable.PrettyTable(row) - header = False else: - if not header: + if line_nr > 1: for idx, item in enumerate(row): try: row[idx] = str(round(float(item) / 1000000, 2)) except ValueError: pass txt_table.add_row(row) + line_nr += 1 txt_table.align["Build Number:"] = "l" - with open("{0}.txt".format("cpta-trending"), "w") as txt_file: + with open("{0}.txt".format(file_name), "w") as txt_file: txt_file.write(str(txt_table)) # Evaluate result: