monitoring(testing): keep latest gate state current

This commit is contained in:
jenkins 2026-05-18 15:18:22 -03:00
parent 28f401cce1
commit cc2a98b0a2
3 changed files with 36 additions and 34 deletions

View File

@ -681,14 +681,16 @@ PLATFORM_TEST_CHECKS_SELECTOR = (
PLATFORM_TEST_CHECK_ROLLUP_MATCHERS = ( PLATFORM_TEST_CHECK_ROLLUP_MATCHERS = (
f'suite=~"{PLATFORM_TEST_SUITE_CANONICAL_MATCHER}",branch!="",check!=""' f'suite=~"{PLATFORM_TEST_SUITE_CANONICAL_MATCHER}",branch!="",check!=""'
) )
# This recording rule already folds recent scrape freshness into the current sample.
# Do not wrap it in a multi-hour range for "latest" panels, or old failures linger.
PLATFORM_TEST_CHECK_ROLLUP_SELECTOR = ( PLATFORM_TEST_CHECK_ROLLUP_SELECTOR = (
f'last_over_time(platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status!=""}}[{PLATFORM_TEST_FRESH_WINDOW}])' f'platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status!=""}}'
) )
PLATFORM_TEST_CHECK_ROLLUP_OK_SELECTOR = ( PLATFORM_TEST_CHECK_ROLLUP_OK_SELECTOR = (
f'last_over_time(platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status=~"{PLATFORM_TEST_NON_FAILURE_STATUS}"}}[{PLATFORM_TEST_FRESH_WINDOW}])' f'platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status=~"{PLATFORM_TEST_NON_FAILURE_STATUS}"}}'
) )
PLATFORM_TEST_CHECK_ROLLUP_FAILED_SELECTOR = ( PLATFORM_TEST_CHECK_ROLLUP_FAILED_SELECTOR = (
f'last_over_time(platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status!~"{PLATFORM_TEST_NON_FAILURE_STATUS}"}}[{PLATFORM_TEST_FRESH_WINDOW}])' f'platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status!~"{PLATFORM_TEST_NON_FAILURE_STATUS}"}}'
) )
PLATFORM_TEST_CHECK_ROLLUP_SEEN_FLAGS = ( PLATFORM_TEST_CHECK_ROLLUP_SEEN_FLAGS = (
f'clamp_max(max by (suite, check) (({PLATFORM_TEST_CHECK_ROLLUP_SELECTOR}) > 0), 1)' f'clamp_max(max by (suite, check) (({PLATFORM_TEST_CHECK_ROLLUP_SELECTOR}) > 0), 1)'
@ -3778,7 +3780,7 @@ def build_jobs_dashboard():
f'platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",' f'platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",'
f'branch=~"{branch_var}",{check_matcher},{status_matcher}}}' f'branch=~"{branch_var}",{check_matcher},{status_matcher}}}'
) )
return f"last_over_time({selector}[{PLATFORM_TEST_FRESH_WINDOW}])" return selector
def _latest_check_flags( def _latest_check_flags(
check_matcher: str = 'check!=""', check_matcher: str = 'check!=""',

View File

@ -455,7 +455,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "sort(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}", "legendFormat": "{{suite}}",
"instant": true "instant": true
@ -1330,7 +1330,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1406,7 +1406,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1482,7 +1482,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1558,7 +1558,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1634,7 +1634,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1710,7 +1710,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1786,7 +1786,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1877,7 +1877,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1953,7 +1953,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2029,7 +2029,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2105,7 +2105,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2181,7 +2181,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2257,7 +2257,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2333,7 +2333,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }

View File

@ -464,7 +464,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "sort(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}", "legendFormat": "{{suite}}",
"instant": true "instant": true
@ -1339,7 +1339,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1415,7 +1415,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1491,7 +1491,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1567,7 +1567,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1643,7 +1643,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1719,7 +1719,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1795,7 +1795,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1886,7 +1886,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1962,7 +1962,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2038,7 +2038,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2114,7 +2114,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2190,7 +2190,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2266,7 +2266,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2342,7 +2342,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (((clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}[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) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1)) unless on(suite, check) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > 0), 1))))) / clamp_min((sum by (suite) (clamp_max(max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}) > 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", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }