Initial configuration

Change-Id: I3a0bdf046a93360a927173ddf47351f940cb9561
Reviewed-on: https://gn-review.googlesource.com/1000
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Petr Hosek <phosek@google.com>
diff --git a/cr-buildbucket.cfg b/cr-buildbucket.cfg
new file mode 100644
index 0000000..381ab82
--- /dev/null
+++ b/cr-buildbucket.cfg
@@ -0,0 +1,115 @@
+# Defines buckets on cr-buildbucket.appspot.com, used to schedule builds
+# on buildbot. In particular, CQ uses some of these buckets to schedule tryjobs.
+#
+# See http://luci-config.appspot.com/schemas/projects:buildbucket.cfg for
+# schema of this file and documentation.
+#
+# Please keep this list sorted by bucket name.
+
+acl_sets {
+  name: "public"
+  acls {
+    role: READER
+    group: "all"
+  }
+}
+
+acl_sets {
+  name: "ci"
+  acls {
+    role: SCHEDULER
+    identity: "luci-scheduler@appspot.gserviceaccount.com"
+  }
+}
+
+acl_sets {
+  name: "try"
+  acls {
+    role: SCHEDULER
+    group: "project-gn-tryjob-access"
+  }
+  acls {
+    role: SCHEDULER
+    group: "service-account-cq"
+  }
+}
+
+buckets {
+  name: "luci.gn.ci"
+  acl_sets: "public"
+  acl_sets: "ci"
+
+  swarming {
+    hostname: "chromium-swarm.appspot.com"
+    builder_defaults {
+      dimensions: "pool:luci.flex.ci"
+      execution_timeout_secs: 1800  # 30 minutes
+      recipe {
+        cipd_package: "infra/recipe_bundles/gn.googlesource.com/gn"
+        cipd_version: "refs/heads/master"
+        name: "gn"
+      }
+      service_account: "gn-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
+    }
+
+    # Keep builders sorted by category, then name.
+
+    builders {
+      name: "linux"
+      dimensions: "os:Ubuntu-14.04"
+      dimensions: "cpu:x86-64"
+    }
+
+    builders {
+      name: "mac"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cpu:x86-64"
+    }
+
+    builders {
+      name: "win"
+      dimensions: "os:Windows-10"
+      dimensions: "cpu:x86-64"
+    }
+  }
+}
+
+buckets {
+  name: "luci.gn.try"
+  acl_sets: "public"
+  acl_sets: "try"
+
+  swarming {
+    hostname: "chromium-swarm.appspot.com"
+    builder_defaults {
+      dimensions: "pool:luci.flex.try"
+      execution_timeout_secs: 1800  # 30 minutes
+      recipe {
+        cipd_package: "infra/recipe_bundles/gn.googlesource.com/gn"
+        cipd_version: "refs/heads/master"
+        name: "gn"
+      }
+      service_account: "gn-try-builder@chops-service-accounts.iam.gserviceaccount.com"
+    }
+
+    # Keep builders sorted by category, then name.
+
+    builders {
+      name: "linux"
+      dimensions: "os:Ubuntu-14.04"
+      dimensions: "cpu:x86-64"
+    }
+
+    builders {
+      name: "mac"
+      dimensions: "os:Mac-10.13"
+      dimensions: "cpu:x86-64"
+    }
+
+    builders {
+      name: "win"
+      dimensions: "os:Windows-10"
+      dimensions: "cpu:x86-64"
+    }
+  }
+}
diff --git a/luci-logdog.cfg b/luci-logdog.cfg
new file mode 100644
index 0000000..1ae3063
--- /dev/null
+++ b/luci-logdog.cfg
@@ -0,0 +1,12 @@
+# For the schema of this file and documentation, see ProjectConfig message in
+# https://luci-config.appspot.com/schemas/services/luci-logdog:logdog.cfg
+
+# Auth groups who can read log streams.
+reader_auth_groups: "all"
+# Auth groups who can register and emit new log streams.
+writer_auth_groups: "luci-logdog-chromium-writers"
+
+# The base Google Storage archival path for this project.
+#
+# Archived LogDog logs will be written to this bucket/path.
+archive_gs_bucket: "chromium-luci-logdog"
diff --git a/luci-milo.cfg b/luci-milo.cfg
new file mode 100644
index 0000000..a076e37
--- /dev/null
+++ b/luci-milo.cfg
@@ -0,0 +1,20 @@
+logo_url: "https://storage.googleapis.com/chrome-infra-public/logo/chrome-infra-logo-200x200.png"
+
+consoles: {
+  id: "gn"
+  name: "gn"
+  repo_url: "https://gn.googlesource.com/gn"
+  ref: "refs/heads/master"
+  manifest_name: "REVISION"
+  favicon_url: "https://storage.googleapis.com/chrome-infra-public/logo/favicon.ico"
+
+  builders: {
+    name: "buildbucket/luci.gn.ci/linux"
+  }
+  builders: {
+    name: "buildbucket/luci.gn.ci/mac"
+  }
+  builders: {
+    name: "buildbucket/luci.gn.ci/win"
+  }
+}
diff --git a/luci-scheduler.cfg b/luci-scheduler.cfg
new file mode 100644
index 0000000..4a11af1
--- /dev/null
+++ b/luci-scheduler.cfg
@@ -0,0 +1,59 @@
+# 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/cron.proto
+
+acl_sets {
+  name: "default"
+  acls {
+    role: READER
+    granted_to: "group:all"
+  }
+  acls {
+    role: OWNER
+    granted_to: "group:project-gn-committers"
+  }
+}
+
+trigger {
+  id: "gn-gitiles-trigger"
+  acl_sets: "default"
+  gitiles: {
+    repo: "https://gn.googlesource.com/gn"
+    refs: "refs/heads/master"
+  }
+  triggers: "linux"
+  triggers: "mac"
+  triggers: "win"
+}
+
+job {
+  id: "linux"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.gn.ci"
+    builder: "linux"
+  }
+}
+
+job {
+  id: "mac"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.gn.ci"
+    builder: "mac"
+  }
+}
+
+job {
+  id: "win"
+  acl_sets: "default"
+  buildbucket: {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "luci.gn.ci"
+    builder: "win"
+  }
+}
diff --git a/project.cfg b/project.cfg
new file mode 100644
index 0000000..4a0a6a0
--- /dev/null
+++ b/project.cfg
@@ -0,0 +1,5 @@
+# For the schema of this file and documentation, see ProjectCfg message in
+# https://luci-config.appspot.com/schemas/projects:project.cfg
+
+name: "gn"
+access: "group:all" # public
diff --git a/refs.cfg b/refs.cfg
new file mode 100644
index 0000000..4c769a5
--- /dev/null
+++ b/refs.cfg
@@ -0,0 +1,7 @@
+# Schema of this file:
+# https://luci-config.appspot.com/schemas/projects:refs.cfg
+
+refs {
+  name: "refs/heads/master"
+  config_path: "infra/config"
+}