# Defines jobs on luci-scheduler.appspot.com.
#
# For schema of this file and documentation see ProjectConfig message in
#
# https://chromium.googlesource.com/infra/luci/luci-go/+/master/scheduler/appengine/messages/config.proto

acl_sets {
  name: "default"
  acls {
    role: READER
    granted_to: "group:project-r8-readers"
  }
  acls {
    role: OWNER
    granted_to: "group:project-r8-admins"
  }
}

# The format of this file is important, we have a hackish parsing to trigger
# builds in tools/trigger.py
trigger {
  id: "main-gitiles-trigger"
  acl_sets: "default"
  gitiles: {
    repo: "https://r8.googlesource.com/r8"
    refs: "refs/heads/main"
  }
  triggers: "archive"
  triggers: "linux"
  triggers: "linux-jdk8"
  triggers: "linux-jdk9"
  triggers: "linux-jdk11"
  triggers: "linux-android-4.0.4"
  triggers: "linux-android-4.4.4"
  triggers: "linux-android-5.1.1"
  triggers: "linux-android-6.0.1"
  triggers: "linux-android-7.0.0"
  triggers: "linux-android-8.1.0"
  triggers: "linux-android-9.0.0"
  triggers: "linux-android-10.0.0"
  triggers: "linux-run-on-app-dump"
  triggers: "linux-internal"
  triggers: "linux-jctf"
  triggers: "r8cf-linux-jctf"
  triggers: "windows"
  triggers: "desugared_library_head"
}

trigger {
  id: "desugar_library_trigger"
  acl_sets: "default"
  gitiles: {
    repo: "https://github.googlesource.com/google/desugar_jdk_libs"
    refs: "refs/heads/master"
  }
  triggers: "archive_lib_desugar"
}

trigger {
  id: "kotlin_trigger"
  acl_sets: "default"
  gitiles: {
    repo: "https://github.googlesource.com/google/kotlin"
    refs: "refs/heads/google-ir"
  }
  triggers: "kotlin-builder"
}

trigger {
  id: "branch-gitiles-trigger"
  acl_sets: "default"
  gitiles: {
    repo: "https://r8.googlesource.com/r8"
    # Version branches are named d8-x.y (up until d8-1.5) or just x.y (from 1.6)
    refs: "regexp:refs/heads/(?:d8-)?[0-9]+\\.[0-9]+(\\.[0-9]+)?"
    path_regexps: "src/main/java/com/android/tools/r8/Version.java"
  }
  triggers: "archive_release"
  triggers: "linux_release"
  triggers: "linux-jdk8_release"
  triggers: "linux-jdk9_release"
  triggers: "linux-jdk11_release"
  triggers: "linux-android-4.0.4_release"
  triggers: "linux-android-4.4.4_release"
  triggers: "linux-android-5.1.1_release"
  triggers: "linux-android-6.0.1_release"
  triggers: "linux-android-7.0.0_release"
  triggers: "linux-android-8.1.0_release"
  triggers: "linux-android-9.0.0_release"
  triggers: "linux-android-10.0.0_release"
  triggers: "linux-internal_release"
  triggers: "linux-jctf_release"
  triggers: "r8cf-linux-jctf_release"
  triggers: "windows_release"
}

trigger {
  id: "app-dump-gitiles-trigger"
  acl_sets: "default"
  gitiles: {
    repo: "https://r8.googlesource.com/r8"
    # Only trigger apps from 3.0 (this works until we reach version 10)
    refs: "regexp:refs/heads/[3-9]+\\.[0-9]+(\\.[0-9]+)?"
    path_regexps: "src/main/java/com/android/tools/r8/Version.java"
  }
  triggers: "linux-run-on-app-dump_release"
}


job {
  id: "archive"
  acl_sets: "default"
  triggering_policy: {
    max_concurrent_invocations: 3
    max_batch_size: 1
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "archive"
  }
}

job {
  id: "archive_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "archive_release"
  }
}

job {
  id: "archive_lib_desugar"
  acl_sets: "default"
  triggering_policy: {
    max_concurrent_invocations: 1
    max_batch_size: 1
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "archive_lib_desugar"
  }
}

job {
  id: "desugared_library_head"
  acl_sets: "default"
  triggering_policy: {
    max_concurrent_invocations: 1
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "desugared_library_head"
  }
}

job {
  id: "kotlin-builder"
  acl_sets: "default"
  triggering_policy: {
    max_concurrent_invocations: 1
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "kotlin-builder"
  }
}

job {
  id: "linux"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux"
  }
}

job {
  id: "linux-jdk8"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 2
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-jdk8"
  }
}

job {
  id: "linux-jdk8_release"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 2
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-jdk8_release"
  }
}

job {
  id: "linux-jdk9"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 2
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-jdk9"
  }
}

job {
  id: "linux-jdk9_release"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 2
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-jdk9_release"
  }
}

job {
  id: "linux-jdk11"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 2
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-jdk11"
  }
}

job {
  id: "linux-jdk11_release"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 2
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-jdk11_release"
  }
}

job {
  id: "linux-android-4.0.4"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-4.0.4"
  }
}

job {
  id: "linux-android-4.0.4_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-4.0.4_release"
  }
}

job {
  id: "linux-android-4.4.4"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-4.4.4"
  }
}

job {
  id: "linux-android-4.4.4_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-4.4.4_release"
  }
}

job {
  id: "linux-android-5.1.1"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-5.1.1"
  }
}

job {
  id: "linux-android-5.1.1_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-5.1.1_release"
  }
}

job {
  id: "linux-android-6.0.1"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-6.0.1"
  }
}

job {
  id: "linux-android-6.0.1_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-6.0.1_release"
  }
}

job {
  id: "linux-android-7.0.0"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-7.0.0"
  }
}

job {
  id: "linux-android-7.0.0_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-7.0.0_release"
  }
}

job {
  id: "linux-android-8.1.0"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-8.1.0"
  }
}

job {
  id: "linux-android-8.1.0_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-8.1.0_release"
  }
}


job {
  id: "linux-android-9.0.0"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-9.0.0"
  }
}

job {
  id: "linux-android-9.0.0_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-9.0.0_release"
  }
}

job {
  id: "linux-android-10.0.0"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-10.0.0"
  }
}

job {
  id: "linux-android-10.0.0_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-android-10.0.0_release"
  }
}

job {
  id: "linux-internal"
  acl_sets: "default"
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-internal"
  }
}

job {
  id: "linux-internal_release"
  acl_sets: "default"
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-internal_release"
  }
}

job {
  id: "linux-run-on-app-dump"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-run-on-app-dump"
  }
}

job {
  id: "linux-run-on-app-dump_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-run-on-app-dump_release"
  }
}

job {
  id: "linux-jctf"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-jctf"
  }
}

job {
  id: "linux-jctf_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-jctf_release"
  }
}

job {
  id: "linux_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux_release"
  }
}

job {
  id: "r8cf-linux-jctf"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "r8cf-linux-jctf"
  }
}

job {
  id: "r8cf-linux-jctf_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "r8cf-linux-jctf_release"
  }
}

job {
  id: "windows"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 3
  }
  acl_sets: "default"
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "windows"
  }
}

job {
  id: "windows_release"
  acl_sets: "default"
  triggering_policy: {
    max_batch_size: 1
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "windows_release"
  }
}

