# 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: "master-gitiles-trigger"
  acl_sets: "default"
  gitiles: {
    repo: "https://r8.googlesource.com/r8"
    refs: "refs/heads/master"
  }
  triggers: "archive"
  triggers: "linux"
  triggers: "linux_horizontal"
  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-as-app"
  triggers: "linux-run-on-as-app-recompilation"
  triggers: "linux-internal"
  triggers: "linux-jctf"
  triggers: "r8cf-linux-jctf"
  triggers: "windows"
}

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: "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-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: "linux-run-on-as-app_release"
  triggers: "linux_release"
  triggers: "r8cf-linux-jctf_release"
  triggers: "windows_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: "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_horizontal"
  acl_sets: "default"
  triggering_policy: {
    kind: GREEDY_BATCHING
    max_concurrent_invocations: 3
  }
  buildbucket {
    server: "cr-buildbucket.appspot.com"
    bucket: "luci.r8.ci"
    builder: "linux_horizontal"
  }
}

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-as-app"
  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-as-app"
  }
}

job {
  id: "linux-run-on-as-app-recompilation"
  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-as-app-recompilation"
  }
}

job {
  id: "linux-run-on-as-app_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-as-app_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"
  }
}

