# Auto-generated by lucicfg.
# Do not modify manually.
#
# For the schema of this file, see BuildbucketCfg message:
#   https://luci-config.appspot.com/schemas/projects:buildbucket.cfg

buckets {
  name: "ci"
  acls {
    group: "all"
  }
  swarming {
    builders {
      name: "linux"
      swarming_host: "chromium-swarm.appspot.com"
      dimensions: "cpu:x86-64"
      dimensions: "os:Ubuntu-16.04"
      dimensions: "pool:luci.flex.ci"
      recipe {
        name: "gn"
        cipd_package: "infra/recipe_bundles/gn.googlesource.com/gn"
        cipd_version: "refs/heads/main"
      }
      execution_timeout_secs: 3600
      service_account: "gn-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
      experiments {
        key: "luci.recipes.use_python3"
        value: 100
      }
    }
    builders {
      name: "mac"
      swarming_host: "chromium-swarm.appspot.com"
      dimensions: "cpu:x86-64"
      dimensions: "os:Mac-10.15"
      dimensions: "pool:luci.flex.ci"
      recipe {
        name: "gn"
        cipd_package: "infra/recipe_bundles/gn.googlesource.com/gn"
        cipd_version: "refs/heads/main"
      }
      execution_timeout_secs: 3600
      caches {
        name: "macos_sdk"
        path: "macos_sdk"
      }
      service_account: "gn-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
      experiments {
        key: "luci.recipes.use_python3"
        value: 100
      }
    }
    builders {
      name: "win"
      swarming_host: "chromium-swarm.appspot.com"
      dimensions: "cpu:x86-64"
      dimensions: "os:Windows-10"
      dimensions: "pool:luci.flex.ci"
      recipe {
        name: "gn"
        cipd_package: "infra/recipe_bundles/gn.googlesource.com/gn"
        cipd_version: "refs/heads/main"
      }
      execution_timeout_secs: 3600
      caches {
        name: "windows_sdk"
        path: "windows_sdk"
      }
      service_account: "gn-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
      experiments {
        key: "luci.recipes.use_python3"
        value: 100
      }
    }
  }
}
buckets {
  name: "try"
  acls {
    group: "all"
  }
  acls {
    role: SCHEDULER
    group: "project-gn-tryjob-access"
  }
  acls {
    role: SCHEDULER
    group: "service-account-cq"
  }
  swarming {
    builders {
      name: "linux"
      swarming_host: "chromium-swarm.appspot.com"
      dimensions: "cpu:x86-64"
      dimensions: "os:Ubuntu-18.04"
      dimensions: "pool:luci.flex.try"
      recipe {
        name: "gn"
        cipd_package: "infra/recipe_bundles/gn.googlesource.com/gn"
        cipd_version: "refs/heads/main"
      }
      execution_timeout_secs: 3600
      service_account: "gn-try-builder@chops-service-accounts.iam.gserviceaccount.com"
      experiments {
        key: "luci.recipes.use_python3"
        value: 100
      }
    }
    builders {
      name: "mac"
      swarming_host: "chromium-swarm.appspot.com"
      dimensions: "cpu:x86-64"
      dimensions: "os:Mac-10.15"
      dimensions: "pool:luci.flex.try"
      recipe {
        name: "gn"
        cipd_package: "infra/recipe_bundles/gn.googlesource.com/gn"
        cipd_version: "refs/heads/main"
      }
      execution_timeout_secs: 3600
      caches {
        name: "macos_sdk"
        path: "macos_sdk"
      }
      service_account: "gn-try-builder@chops-service-accounts.iam.gserviceaccount.com"
      experiments {
        key: "luci.recipes.use_python3"
        value: 100
      }
    }
    builders {
      name: "win"
      swarming_host: "chromium-swarm.appspot.com"
      dimensions: "cpu:x86-64"
      dimensions: "os:Windows-10"
      dimensions: "pool:luci.flex.try"
      recipe {
        name: "gn"
        cipd_package: "infra/recipe_bundles/gn.googlesource.com/gn"
        cipd_version: "refs/heads/main"
      }
      execution_timeout_secs: 3600
      caches {
        name: "windows_sdk"
        path: "windows_sdk"
      }
      service_account: "gn-try-builder@chops-service-accounts.iam.gserviceaccount.com"
      experiments {
        key: "luci.recipes.use_python3"
        value: 100
      }
    }
  }
}
