# Commit Queue configuration file. The documentation of the format can be found
# at http://luci-config.appspot.com/schemas/projects/refs:cq.cfg.

version: 1
cq_name: "skia"
cq_status_url: "https://chromium-cq-status.appspot.com"
git_repo_url: "https://skia.googlesource.com/skia/"
gerrit {}

commit_burst_delay: 300
max_commit_burst: 2

rietveld {
  url: "https://codereview.chromium.org"
}

verifiers {
  reviewer_lgtm {
    committer_list: "project-skia-committers"
    dry_run_access_list: "project-skia-tryjob-access"
    max_wait_secs: 21600  # 6 hours
    no_lgtm_msg: "No LGTM from a valid reviewer yet. Please ask for an LGTM "
                 "from a\nfull Skia committer"
  }

  tree_status {
    tree_status_url: "https://skia-tree-status.appspot.com"
  }

  try_job {
    buckets {
      name: "master.client.skia"
      builders { name: "Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-GN-Trybot" }
      builders { name: "Test-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Release-GN-Trybot" }
    }
    buckets {
      name: "master.client.skia.compile"
      builders { name: "Build-Mac-Clang-x86_64-Release-GN-Trybot" }
      builders { name: "Build-Ubuntu-Clang-arm-Debug-GN_Android-Trybot" }
      builders { name: "Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot" }
      builders { name: "Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs-Trybot" }
      builders { name: "Build-Ubuntu-Clang-mips64el-Debug-GN_Android-Trybot" }
      builders { name: "Build-Ubuntu-Clang-x86_64-Debug-GN-Trybot" }
      builders { name: "Build-Ubuntu-GCC-x86_64-Release-GN-Trybot" }
      builders { name: "Build-Win-MSVC-x86-Debug-Trybot" }
      builders { name: "Build-Win-MSVC-x86_64-Release-Vulkan-Trybot" }
    }
    buckets {
      name: "master.client.skia.fyi"
      builders { name: "skia_presubmit-Trybot" }
    }
    buckets {
      name: "master.client.skia.android"
      builders { name: "Test-Android-Clang-Nexus5-GPU-Adreno330-arm-Release-GN_Android-Trybot" }
    }
    buckets {
      name: "master.tryserver.chromium.mac"
      # At time of writing, this is the fastest Chrome compile bot on average.
      builders { name: "mac_chromium_compile_dbg_ng" }
    }
    try_job_retry_config {
      try_job_retry_quota: 1
      global_retry_quota: 2
      failure_retry_weight: 2
      transient_failure_retry_weight: 1
      timeout_retry_weight: 2
    }
  }

  sign_cla {}
}
