diff --git a/scripts/dashboards_render_atlas.py b/scripts/dashboards_render_atlas.py index 81d5073f..478b7476 100644 --- a/scripts/dashboards_render_atlas.py +++ b/scripts/dashboards_render_atlas.py @@ -635,32 +635,46 @@ def platform_check_status_expr( branch_matcher: str = 'branch!=""', check_matcher: str = 'check!=""', status_matcher: str = 'status!=""', - window: str = PLATFORM_TEST_FRESH_WINDOW, + window: str | None = PLATFORM_TEST_FRESH_WINDOW, ) -> str: """Return recent check gauges normalized to a status label.""" result_matcher = status_matcher.replace("status", "result", 1) + status_guards = [status_matcher] + result_guards = [result_matcher] + if status_matcher.startswith("status!") and status_matcher != 'status!=""': + status_guards.insert(0, 'status!=""') + if result_matcher.startswith("result!") and result_matcher != 'result!=""': + result_guards.insert(0, 'result!=""') + status_selector = ",".join(status_guards) + result_selector = ",".join(result_guards) base = ( f'__name__=~".*_quality_gate_checks_total",{suite_matcher},' f'{PLATFORM_TEST_EXPORT_FILTER},{check_matcher}' ) + def maybe_recent(selector: str) -> str: + metric = f"{{{selector}}}" + return f"last_over_time({metric}[{window}])" if window else metric + + build_info_metric = f'platform_quality_gate_build_info{{{suite_matcher},{PLATFORM_TEST_EXPORT_FILTER},{branch_matcher}}}' build_info = ( - f'max by (suite, branch) (last_over_time(platform_quality_gate_build_info' - f'{{{suite_matcher},{PLATFORM_TEST_EXPORT_FILTER},{branch_matcher}}}[{window}]))' + f"max by (suite, branch) (" + f"{f'last_over_time({build_info_metric}[{window}])' if window else build_info_metric}" + f")" ) with_status = ( - f'last_over_time({{{base},{branch_matcher},{status_matcher}}}[{window}])' + maybe_recent(f"{base},{branch_matcher},{status_selector}") ) with_result = ( - f'label_replace(last_over_time({{{base},{branch_matcher},{result_matcher},status=""}}' - f'[{window}]), "status", "$1", "result", "(.*)")' + f'label_replace({maybe_recent(f'{base},{branch_matcher},{result_selector},status=""')}, ' + f'"status", "$1", "result", "(.*)")' ) inferred_status = ( - f'(last_over_time({{{base},branch="",{status_matcher}}}[{window}]) ' + f'({maybe_recent(f"{base},branch=\"\",{status_selector}")} ' f'* on (suite) group_left(branch) ({build_info}))' ) inferred_result = ( - f'(label_replace(last_over_time({{{base},branch="",{result_matcher},status=""}}' - f'[{window}]), "status", "$1", "result", "(.*)") ' + f'(label_replace({maybe_recent(f"{base},branch=\"\",{result_selector},status=\"\"")}, ' + f'"status", "$1", "result", "(.*)") ' f'* on (suite) group_left(branch) ({build_info}))' ) return ( @@ -728,12 +742,14 @@ PLATFORM_TEST_PRIMARY_BRANCH_MATCHER = 'branch=~"main|master|origin/main|origin/ PLATFORM_TEST_CHECK_ROLLUP_SELECTOR = platform_check_status_expr( PLATFORM_TEST_CHECK_ROLLUP_MATCHERS, branch_matcher=PLATFORM_TEST_PRIMARY_BRANCH_MATCHER, + window=None, ) PLATFORM_TEST_CHECK_ROLLUP_OK_SELECTOR = ( platform_check_status_expr( PLATFORM_TEST_CHECK_ROLLUP_MATCHERS, branch_matcher=PLATFORM_TEST_PRIMARY_BRANCH_MATCHER, status_matcher=f'status=~"{PLATFORM_TEST_NON_FAILURE_STATUS}"', + window=None, ) ) PLATFORM_TEST_CHECK_ROLLUP_FAILED_SELECTOR = ( @@ -741,6 +757,7 @@ PLATFORM_TEST_CHECK_ROLLUP_FAILED_SELECTOR = ( PLATFORM_TEST_CHECK_ROLLUP_MATCHERS, branch_matcher=PLATFORM_TEST_PRIMARY_BRANCH_MATCHER, status_matcher=f'status!~"{PLATFORM_TEST_NON_FAILURE_STATUS}"', + window=None, ) ) PLATFORM_TEST_CHECK_ROLLUP_SEEN_FLAGS = ( @@ -3832,6 +3849,7 @@ def build_jobs_dashboard(): branch_matcher=f'branch!="",branch=~"{branch_var}"', check_matcher=check_matcher, status_matcher=status_matcher, + window=None, ) return selector diff --git a/scripts/tests/test_dashboards_render_atlas.py b/scripts/tests/test_dashboards_render_atlas.py index d82551db..8657d8eb 100644 --- a/scripts/tests/test_dashboards_render_atlas.py +++ b/scripts/tests/test_dashboards_render_atlas.py @@ -229,10 +229,12 @@ def test_jobs_dashboard_separates_current_gate_health_from_reliability(): assert 'check)' in current_gate_expr assert "platform_quality:check_status:present_1h" not in current_gate_expr assert '.*_quality_gate_checks_total' in current_gate_expr - assert "last_over_time" in current_gate_expr + assert "last_over_time" not in current_gate_expr assert 'label_replace' in current_gate_expr assert 'result=~"ok|passed|success|not_applicable|skipped|na|n/a"' in current_gate_expr assert 'status=~"ok|passed|success|not_applicable|skipped|na|n/a"' in current_gate_expr + assert 'result!="",result!~"ok|passed|success|not_applicable|skipped|na|n/a"' in current_gate_expr + assert 'status!="",status!~"ok|passed|success|not_applicable|skipped|na|n/a"' in current_gate_expr assert 'status!~"ok|passed|success|not_applicable|skipped|na|n/a"' in current_gate_expr assert "unless on(suite, check)" in current_gate_expr assert "tlast_over_time" not in current_gate_expr @@ -342,8 +344,10 @@ def test_jobs_dashboard_collapses_heavy_drilldowns_for_light_first_paint(): assert "increase(" not in failure_rate_panel["targets"][0]["expr"] assert "platform_quality:check_status:present_1h" not in failure_rate_panel["targets"][0]["expr"] assert '.*_quality_gate_checks_total' in failure_rate_panel["targets"][0]["expr"] - assert "last_over_time" in failure_rate_panel["targets"][0]["expr"] + assert "last_over_time" not in failure_rate_panel["targets"][0]["expr"] assert 'label_replace' in failure_rate_panel["targets"][0]["expr"] + assert 'status!="",status!~"ok|passed|success|not_applicable|skipped|na|n/a"' in failure_rate_panel["targets"][0]["expr"] + assert 'result!="",result!~"ok|passed|success|not_applicable|skipped|na|n/a"' in failure_rate_panel["targets"][0]["expr"] assert "0 *" in failure_rate_panel["targets"][0]["expr"] assert "and on(suite)" not in failure_rate_panel["targets"][0]["expr"] diff --git a/services/monitoring/dashboards/atlas-testing.json b/services/monitoring/dashboards/atlas-testing.json index 3cc6e04a..3e92b2ee 100644 --- a/services/monitoring/dashboards/atlas-testing.json +++ b/services/monitoring/dashboards/atlas-testing.json @@ -455,7 +455,7 @@ }, "targets": [ { - "expr": "sort(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1)) or on(suite) ((((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))) - 1))))", + "expr": "sort(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1)) or on(suite) ((((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))) - 1))))", "refId": "A", "legendFormat": "{{suite}}", "instant": true @@ -1330,7 +1330,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1406,7 +1406,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1482,7 +1482,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1558,7 +1558,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1634,7 +1634,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1710,7 +1710,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1786,7 +1786,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1877,7 +1877,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1953,7 +1953,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2029,7 +2029,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2105,7 +2105,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2181,7 +2181,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2257,7 +2257,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2333,7 +2333,7 @@ }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } diff --git a/services/monitoring/grafana-dashboard-testing.yaml b/services/monitoring/grafana-dashboard-testing.yaml index fe38f91c..510fe131 100644 --- a/services/monitoring/grafana-dashboard-testing.yaml +++ b/services/monitoring/grafana-dashboard-testing.yaml @@ -464,7 +464,7 @@ data: }, "targets": [ { - "expr": "sort(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1)) or on(suite) ((((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))) - 1))))", + "expr": "sort(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check!=\"\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1)) or on(suite) ((((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))) - 1))))", "refId": "A", "legendFormat": "{{suite}}", "instant": true @@ -1339,7 +1339,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1415,7 +1415,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1491,7 +1491,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1567,7 +1567,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1643,7 +1643,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1719,7 +1719,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1795,7 +1795,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1886,7 +1886,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"tests|unit|build\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -1962,7 +1962,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"coverage\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2038,7 +2038,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"loc|smell\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2114,7 +2114,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2190,7 +2190,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"gate|glue|gate_glue\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2266,7 +2266,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"sonarqube|sonar\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" } @@ -2342,7 +2342,7 @@ data: }, "targets": [ { - "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"}[30h]) or label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") or (last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\"}[30h]) * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))) or (label_replace(last_over_time({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",status=\"\"}[30h]), \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (last_over_time(platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}[30h])))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", + "expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result=~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",result!~\"ok|passed|success|not_applicable|skipped|na|n/a\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((sum by (suite, branch, check, status) ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",status!=\"\"} or label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch!=\"\",branch=~\"${branch:regex}\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") or ({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",status!=\"\"} * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))) or (label_replace({__name__=~\".*_quality_gate_checks_total\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",branch=\"\",result!=\"\",status=\"\"}, \"status\", \"$1\", \"result\", \"(.*)\") * on (suite) group_left(branch) (max by (suite, branch) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\",branch!=\"\",branch=~\"${branch:regex}\"}))))) > 0), 1))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "refId": "A", "legendFormat": "{{suite}}" }