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

name: "try"
acls {
  group: "all"
}
acls {
  role: SCHEDULER
  identity: "user:pigweed-try-builder@pigweed.google.com.iam.gserviceaccount.com"
}
acls {
  role: SCHEDULER
  group: "project-pigweed-tryjob-access"
}
swarming {
  builders {
    name: "envtest-linux-python2"
    swarming_host: "chromium-swarm.appspot.com"
    dimensions: "cores:16"
    dimensions: "cpu:x64|x86-64"
    dimensions: "os:Debian"
    dimensions: "pool:luci.pigweed.try"
    exe {
      cipd_package: "pigweed/infra/recipe_bundles/pigweed.googlesource.com/infra/recipes"
      cipd_version: "refs/heads/main"
      cmd: "luciexe"
    }
    properties:
      '{'
      '  "$pigweed/checkout": {'
      '    "branch": "main",'
      '    "equivalent_remotes": [],'
      '    "match_branch": true,'
      '    "remote": "https://pigweed.googlesource.com/pigweed/pigweed",'
      '    "use_repo": false'
      '  },'
      '  "command": "python -m pw_cli --directory $PW_PROJECT_ROOT --loglevel debug presubmit --step gn_gen_check",'
      '  "environment_variables": ['
      '    "PW_BOOTSTRAP_PYTHON=python2"'
      '  ],'
      '  "recipe": "envtest"'
      '}'
    priority: 40
    execution_timeout_secs: 2700
    caches {
      name: "builder"
      path: "builder"
    }
    caches {
      name: "pip"
      path: "pip"
      wait_for_warm_cache_secs: 60
    }
    service_account: "pigweed-try-builder@pigweed.google.com.iam.gserviceaccount.com"
    experiments {
      key: "luci.recipes.use_python3"
      value: 100
    }
    experiments {
      key: "luci.use_realms"
      value: 100
    }
  }
}
