X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Ftools%2Fpresentation%2Fgenerator_CPTA.py;h=69a8df6afd4b54f429d9f337fc7982bf91e262a4;hp=69c52d4180f2ae3fe17c8a307ef0f1602b76a056;hb=9356c41a2071d83d11723290cbecc8bdcf1a4b04;hpb=c623ad8042127fcb4bbd3c9ffb646f40371b7510 diff --git a/resources/tools/presentation/generator_CPTA.py b/resources/tools/presentation/generator_CPTA.py index 69c52d4180..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,6 +441,8 @@ def _generate_all_charts(spec, input_data): idx += 1 # Generate the chart: + chart["layout"]["xaxis"]["title"] = \ + chart["layout"]["xaxis"]["title"].format(job=job_name) _generate_chart(traces, chart["layout"], file_name="{0}-{1}-{2}{3}".format( @@ -442,19 +461,19 @@ def _generate_all_charts(spec, input_data): txt_table = None 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(file_name), "w") as txt_file: txt_file.write(str(txt_table))