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

consoles {
  id: "main"
  name: "R8 Main Console"
  repo_url: "https://r8.googlesource.com/r8"
  refs: "regexp:refs/heads/.*"
  manifest_name: "REVISION"
  builders {
    name: "buildbucket/luci.r8.ci/linux-d8_jctf"
    category: "R8"
    short_name: "d8_jctf"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-r8cf_jctf"
    category: "R8"
    short_name: "r8cf_jctf"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-d8_jctf_release"
    category: "R8 release"
    short_name: "d8_jctf_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-r8cf_jctf_release"
    category: "R8 release"
    short_name: "r8cf_jctf_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-run-on-app-dump"
    category: "R8"
    short_name: "dump"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-run-on-app-dump_release"
    category: "R8 release"
    short_name: "dump_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/desugared_library_head"
    category: "R8"
    short_name: "desugared_library_head"
  }
  builders {
    name: "buildbucket/luci.r8.ci/desugared_library_jdk11_head"
    category: "R8"
    short_name: "desugared_library_jdk11_head"
  }
  builders {
    name: "buildbucket/luci.r8.ci/archive"
    category: "R8"
    short_name: "archive"
  }
  builders {
    name: "buildbucket/luci.r8.ci/archive_release"
    category: "R8 release"
    short_name: "archive_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/archive_lib_desugar"
    category: "R8"
    short_name: "archive_lib_desugar"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-internal"
    category: "R8"
    short_name: "internal"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-internal_release"
    category: "R8 release"
    short_name: "internal_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-dex_default"
    category: "R8"
    short_name: "dex_default"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-dex_default_release"
    category: "R8 release"
    short_name: "dex_default_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-none"
    category: "R8"
    short_name: "none"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-none_release"
    category: "R8 release"
    short_name: "none_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-jdk8"
    category: "R8"
    short_name: "jdk8"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-jdk8_release"
    category: "R8 release"
    short_name: "jdk8_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-jdk9"
    category: "R8"
    short_name: "jdk9"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-jdk9_release"
    category: "R8 release"
    short_name: "jdk9_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-jdk11"
    category: "R8"
    short_name: "jdk11"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-jdk11_release"
    category: "R8 release"
    short_name: "jdk11_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-4.0.4"
    category: "R8"
    short_name: "4.0.4"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-4.0.4_release"
    category: "R8 release"
    short_name: "4.0.4_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-4.4.4"
    category: "R8"
    short_name: "4.4.4"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-4.4.4_release"
    category: "R8 release"
    short_name: "4.4.4_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-5.1.1"
    category: "R8"
    short_name: "5.1.1"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-5.1.1_release"
    category: "R8 release"
    short_name: "5.1.1_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-6.0.1"
    category: "R8"
    short_name: "6.0.1"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-6.0.1_release"
    category: "R8 release"
    short_name: "6.0.1_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-7.0.0"
    category: "R8"
    short_name: "7.0.0"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-7.0.0_release"
    category: "R8 release"
    short_name: "7.0.0_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-8.1.0"
    category: "R8"
    short_name: "8.1.0"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-8.1.0_release"
    category: "R8 release"
    short_name: "8.1.0_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-9.0.0"
    category: "R8"
    short_name: "9.0.0"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-9.0.0_release"
    category: "R8 release"
    short_name: "9.0.0_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-10.0.0"
    category: "R8"
    short_name: "10.0.0"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-10.0.0_release"
    category: "R8 release"
    short_name: "10.0.0_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-12.0.0"
    category: "R8"
    short_name: "12.0.0"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-android-12.0.0_release"
    category: "R8 release"
    short_name: "12.0.0_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/windows"
    category: "R8"
    short_name: "windows"
  }
  builders {
    name: "buildbucket/luci.r8.ci/windows_release"
    category: "R8 release"
    short_name: "windows_release"
  }
  builders {
    name: "buildbucket/luci.r8.ci/linux-kotlin-dev"
    category: "R8"
    short_name: "dev"
  }
}
