# Copyright 2020 The Flutter Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

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

acls {
  role: REQUESTER
  group: "tricium-flutter-requesters"
}

# Please keep sorted by function name.
selections {
  function: "Copyright"
  platform: LINUX
}
selections {
  function: "GitFileIsolator"
  platform: LINUX
}
selections {
  function: "Spacey"
  platform: LINUX
}
selections {
  function: "SpellChecker"
  platform: LINUX
}
functions {
  type: ANALYZER
  name: "Analyze"
  needs: GIT_FILE_DETAILS
  provides: RESULTS
  path_filters: "*.py"
  owner: "flutter-infra@google.com"
  monorail_component: "Infra>Flutter"
  impls {
    runtime_platform: LINUX
    provides_for_platform: LINUX
    recipe {
      project: "flutter"
      bucket: "try"
      builder: "tricium"
    }
    deadline: 900
  }
}
selections {
  function: "Analyze"
  platform: LINUX
}
repos {
  gerrit_project {
    host: "flutter-review.googlesource.com"
    project: "recipes"
    git_url: "https://flutter.googlesource.com/recipes"
  }
  whitelisted_group: "project-flutter-try-schedulers"
}
service_account: "tricium-prod@appspot.gserviceaccount.com"
swarming_service_account: "swarming@tricium-prod.iam.gserviceaccount.com"

