# Schema for this config file: ProjectConfig in:
# https://luci-config.appspot.com/schemas/projects:luci-analysis.cfg

bug_filing_thresholds {
  metric_id: "human-cls-failed-presubmit"
  threshold {
    # clusters blocking developers should have bugs filed.
    one_day: 3
  }
}
bug_filing_thresholds {
  metric_id: "test-runs-failed"
  threshold {
    # clusters that aren't blocking developers but are failing a significant
    # amount of tasks should have bugs filed to look into optimizing machine
    # resource usage.
    one_day: 500
  }
}

clustering {
  test_name_rules {
    name: "Google Test (Type-parameterized)"
    pattern: "^ninja:(?P<target>[\\w/]+:\\w+)/(\\w+/)?(?P<suite>\\w+)/\\w+\\.(?P<case>\\w+)$"
    like_template: "ninja:${target}/%${suite}/%.${case}"
  }
  test_name_rules {
    name: "Google Test (Value-parameterized)"
    pattern: "^ninja:(?P<target>[\\w/]+:\\w+)/(\\w+/)?(?P<suite>\\w+)\\.(?P<case>\\w+)/[\\w.]+$"
    like_template: "ninja:${target}/%${suite}.${case}%"
  }
}
monorail {
  project: "webrtc"
  default_field_values {
    # Type field.
    field_id: 38
    value: "Bug"
  }
  priority_field_id: 36
  priorities {
    priority: "0"
    thresholds {
      metric_id: "human-cls-failed-presubmit"
      threshold {
        one_day: 20
      }
    }
  }
  priorities {
    priority: "1"
    thresholds {
      metric_id: "human-cls-failed-presubmit"
      threshold {
        one_day: 10
      }
    }
  }
  priorities {
    priority: "2"
    thresholds {
      metric_id: "human-cls-failed-presubmit"
      threshold {
        one_day: 2
      }
    }
  }
  priorities {
    priority: "3"
    # Clusters which fail to meet this threshold will be closed.
    thresholds {
      metric_id: "test-runs-failed"
      threshold {
        one_day: 2
      }
    }
    thresholds {
      metric_id: "human-cls-failed-presubmit"
      threshold {
        one_day: 1
        seven_day: 1
      }
    }
  }
  priority_hysteresis_percent: 50
  monorail_hostname: "bugs.chromium.org"
  display_prefix: "bugs.webrtc.org"
}

realms {
  name: "ci"
  test_variant_analysis {
    update_test_variant_task {
      update_test_variant_task_interval {
        seconds: 3600 # 1 hour
      }
      test_variant_status_update_duration {
        seconds: 86400 # 24 hours
      }
    }
    bq_exports {
      table {
        cloud_project: "webrtc-ci"
        dataset: "weetbix"
        table: "ci_flaky_test_variants"
      }
      predicate {
        status: FLAKY
      }
    }
  }
}

realms {
  name: "try"
  test_variant_analysis {
    update_test_variant_task {
      update_test_variant_task_interval {
        seconds: 3600 # 1 hour
      }
      test_variant_status_update_duration {
        seconds: 86400 # 24 hours
      }
    }
    bq_exports {
      table {
        cloud_project: "webrtc-ci"
        dataset: "weetbix"
        table: "try_flaky_test_variants"
      }
      predicate {
        status: FLAKY
      }
    }
  }
}
