# 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-dex-default"
  triggers: "linux-none"
  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-android-12.0.0"
  triggers: "linux-run-on-app-dump"
  triggers: "linux-internal"
  triggers: "linux-jctf"
  triggers: "r8cf-linux-jctf"
  triggers: "windows"
  triggers: "desugared_library_head"
  triggers: "desugared_library_jdk11_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-dex-default_release"
  triggers: "linux-none_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-android-12.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: "desugared_library_jdk11_head"
  acl_sets: "default"
  triggering_policy: {
    max_concurrent_invocations: 1
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "desugared_library_jdk11_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-dex-default"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 6
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux-dex-default"
  }
}

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

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-android-12.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-12.0.0"
  }
}

job {
  id: "linux-android-12.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-12.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-dex-default_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-dex-default_release"
  }
}

job {
  id: "linux-none_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-none_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"
  }
}

