diff --git a/scripts/publish_test_metrics.py b/scripts/publish_test_metrics.py index 3e4d122..5b565cc 100644 --- a/scripts/publish_test_metrics.py +++ b/scripts/publish_test_metrics.py @@ -237,6 +237,7 @@ def main() -> int: if branch.startswith("origin/"): branch = branch[len("origin/") :] build_number = os.getenv("BUILD_NUMBER", "") + jenkins_job = os.getenv("JOB_NAME", "ariadne") commit = os.getenv("GIT_COMMIT", "") print(f"[metrics] coverage_path={coverage_path} exists={coverage_path.exists()}") @@ -287,8 +288,15 @@ def main() -> int: "suite": suite, "branch": branch, "build_number": build_number, + "jenkins_job": jenkins_job, "commit": commit, } + test_case_base_labels = { + "suite": suite, + "branch": branch, + "build_number": build_number or "unknown", + "jenkins_job": jenkins_job, + } payload_lines = [ "# TYPE platform_quality_gate_runs_total counter", f'platform_quality_gate_runs_total{{suite="{suite}",status="ok"}} {ok_count:.0f}', @@ -313,12 +321,12 @@ def main() -> int: ] if test_cases: payload_lines.extend( - f'platform_quality_gate_test_case_result{{suite="{suite}",test="{_escape_label(test_name)}",status="{_escape_label(test_status)}"}} 1' + f"platform_quality_gate_test_case_result{_label_str({**test_case_base_labels, 'test': test_name, 'status': test_status})} 1" for test_name, test_status in test_cases ) else: payload_lines.append( - f'platform_quality_gate_test_case_result{{suite="{suite}",test="__no_test_cases__",status="skipped"}} 1' + f"platform_quality_gate_test_case_result{_label_str({**test_case_base_labels, 'test': '__no_test_cases__', 'status': 'skipped'})} 1" ) payload_lines.extend( f'ariadne_quality_gate_checks_total{{suite="{suite}",check="{check_name}",result="{check_status}"}} 1'