go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/analysis/configs/projects/chromium/luci-analysis-dev-template.cfg (about) 1 # Copyright 2022 The LUCI Authors. 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); 4 # you may not use this file except in compliance with the License. 5 # You may obtain a copy of the License at 6 # 7 # http://www.apache.org/licenses/LICENSE-2.0 8 # 9 # Unless required by applicable law or agreed to in writing, software 10 # distributed under the License is distributed on an "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 # See the License for the specific language governing permissions and 13 # limitations under the License. 14 15 # Copy this file to luci-analysis-dev.cfg and edit it as needed for running 16 # the local development instance. See the README in the parent directory 17 # for more details. 18 19 # For the schema of this file, see ProjectConfig message: 20 # https://luci-config.appspot.com/schemas/projects:luci-analysis.cfg 21 22 23 project_metadata { 24 display_name: "Chromium" 25 } 26 27 bug_filing_thresholds { 28 metric_id: "human-cls-failed-presubmit" 29 threshold { 30 one_day: 3 31 seven_day: 3 32 } 33 } 34 35 monorail { 36 project: "chromium" 37 default_field_values { 38 field_id: 10 39 value: "Bug" 40 } 41 priority_field_id: 11 42 priorities { 43 priority: "0" 44 thresholds { 45 metric_id: "human-cls-failed-presubmit" 46 threshold { 47 one_day: 20 48 } 49 } 50 } 51 priorities { 52 priority: "1" 53 thresholds { 54 metric_id: "human-cls-failed-presubmit" 55 threshold { 56 one_day: 10 57 } 58 } 59 } 60 priorities { 61 priority: "2" 62 thresholds { 63 metric_id: "human-cls-failed-presubmit" 64 threshold { 65 one_day: 2 66 } 67 } 68 } 69 priorities { 70 priority: "3" 71 # Clusters which fail to meet this threshold will be closed. 72 thresholds { 73 metric_id: "human-cls-failed-presubmit" 74 threshold { 75 one_day: 1 76 seven_day: 1 77 } 78 } 79 thresholds { 80 metric_id: "failures" 81 threshold { 82 one_day: 2 83 } 84 } 85 } 86 priority_hysteresis_percent: 30 87 monorail_hostname: "bugs.chromium.org" 88 display_prefix: "crbug.com" 89 } 90 91 buganizer { 92 default_component { 93 id: 1 94 } 95 priority_mappings { 96 priority: P0 97 thresholds { 98 metric_id: "human-cls-failed-presubmit" 99 threshold { 100 one_day: 20 101 } 102 } 103 } 104 priority_mappings { 105 priority: P1 106 thresholds { 107 metric_id: "human-cls-failed-presubmit" 108 threshold { 109 one_day: 10 110 } 111 } 112 } 113 priority_mappings { 114 priority: P2 115 thresholds { 116 metric_id: "human-cls-failed-presubmit" 117 threshold { 118 one_day: 2 119 } 120 } 121 } 122 priority_mappings { 123 priority: P3 124 # Clusters which fail to meet this threshold will be closed. 125 thresholds { 126 metric_id: "human-cls-failed-presubmit" 127 threshold { 128 one_day: 1 129 seven_day: 1 130 } 131 } 132 thresholds { 133 metric_id: "failures" 134 threshold { 135 one_day: 2 136 } 137 } 138 } 139 priority_hysteresis_percent: 30 140 } 141 142 clustering { 143 test_name_rules { 144 name: "Blink Web Tests" 145 pattern: "^ninja://:blink_web_tests/(virtual/[^/]+/)?(?P<testname>([^/]+/)+[^/]+\\.[a-zA-Z]+).*$" 146 like_template: "ninja://:blink\\_web\\_tests/%${testname}%" 147 } 148 test_name_rules { 149 name: "Google Test (Value-parameterized)" 150 pattern: "^ninja:(?P<target>[\\w/]+:\\w+)/(\\w+/)?(?P<suite>\\w+)\\.(?P<case>\\w+)/\\w+$" 151 like_template: "ninja:${target}/%${suite}.${case}%" 152 } 153 test_name_rules { 154 name: "Google Test (Type-parameterized)" 155 pattern: "^ninja:(?P<target>[\\w/]+:\\w+)/(\\w+/)?(?P<suite>\\w+)/\\w+\\.(?P<case>\\w+)$" 156 like_template: "ninja:${target}/%${suite}/%.${case}" 157 } 158 reason_mask_patterns: "^\\[Fixture failure\\] (\\w+):" 159 } 160 161 bug_management { 162 policies { 163 id: "exonerations" 164 owners: "user@google.com" 165 human_readable_name: "test variant(s) are being exonerated in presubmit" 166 priority: P2 167 metrics { 168 metric_id: "critical-failures-exonerated" 169 activation_threshold { 170 one_day: 50 171 } 172 deactivation_threshold { 173 seven_day: 1 174 } 175 } 176 explanation { 177 problem_html: "Test variant(s) in this cluster are being exonerated (ignored) in presubmit because they are too flaky or failing." 178 action_html: "<ul><li>View recent failures</li><li><a href=\"http://goto.google.com/demote-from-cq\">Demote</a> the test from CQ</li></ul>" 179 } 180 bug_template { 181 comment_template: "Test variant(s) in this cluster are being exonerated (ignored) in presubmit because they are too flaky or failing. {{if .BugID.IsBuganizer}}{{.BugID.BuganizerBugID}}{{end}}" 182 buganizer { 183 hotlists: 12345 184 } 185 monorail { 186 labels: "test-exonerated" 187 } 188 } 189 } 190 default_bug_system: BUGANIZER 191 buganizer { 192 default_component { 193 id: 123456 194 } 195 } 196 monorail { 197 project: "chromium" 198 default_field_values { 199 field_id: 10 200 value: "Bug" 201 } 202 priority_field_id: 11 203 monorail_hostname: "bugs.chromium.org" 204 display_prefix: "crbug.com" 205 } 206 } 207 208 test_stability_criteria { 209 failure_rate { 210 failure_threshold: 6 211 consecutive_failure_threshold: 3 212 } 213 flake_rate { 214 min_window: 100 215 flake_threshold: 2 216 flake_rate_threshold: 0.01 217 } 218 }