infra: Add CI and TRY builders to luci configuration

BUG=1300370
TEST=lucicfg validate main.star

Change-Id: I67eca30a694a69875eb585ad155fbf0419fed353
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3626224
Reviewed-by: Yuanjun Huang <yuanjunh@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
This commit is contained in:
Dennis Kempin 2022-05-03 23:26:09 +00:00
parent 6b2b2184fd
commit 1b2000227f
6 changed files with 166 additions and 0 deletions

View file

@ -0,0 +1,33 @@
# Auto-generated by lucicfg.
# Do not modify manually.
#
# For the schema of this file, see Config message:
# https://luci-config.appspot.com/schemas/projects:commit-queue.cfg
config_groups {
name: "main_repo"
gerrit {
url: "https://chromium-review.googlesource.com"
projects {
name: "crosvm/crosvm"
ref_regexp: "refs/heads/.+"
}
}
verifiers {
gerrit_cq_ability {
committer_list: "mdb/crosvm-acl-luci-admin"
}
tryjob {
builders {
name: "crosvm/try/Verify CL"
}
retry_config {
single_quota: 1
global_quota: 2
failure_weight: 100
transient_failure_weight: 1
timeout_weight: 100
}
}
}
}

View file

@ -32,6 +32,27 @@ buckets {
value: 100
}
}
builders {
name: "Verify CL"
swarming_host: "chromium-swarm.appspot.com"
dimensions: "cpu:x86-64"
dimensions: "os:Ubuntu"
dimensions: "pool:luci.crosvm.ci"
exe {
cipd_package: "infra/recipe_bundles/chromium.googlesource.com/crosvm/crosvm"
cipd_version: "refs/heads/main"
cmd: "luciexe"
}
properties:
'{'
' "recipe": "verify_cl"'
'}'
service_account: "crosvm-luci-ci-builder@crosvm-infra.iam.gserviceaccount.com"
experiments {
key: "luci.recipes.use_python3"
value: 100
}
}
}
}
buckets {
@ -45,4 +66,27 @@ buckets {
acls {
group: "all"
}
swarming {
builders {
name: "Verify CL"
swarming_host: "chromium-swarm.appspot.com"
dimensions: "cpu:x86-64"
dimensions: "os:Ubuntu"
dimensions: "pool:luci.crosvm.try"
exe {
cipd_package: "infra/recipe_bundles/chromium.googlesource.com/crosvm/crosvm"
cipd_version: "refs/heads/main"
cmd: "luciexe"
}
properties:
'{'
' "recipe": "verify_cl"'
'}'
service_account: "crosvm-luci-try-builder@crosvm-infra.iam.gserviceaccount.com"
experiments {
key: "luci.recipes.use_python3"
value: 100
}
}
}
}

View file

@ -0,0 +1,16 @@
# 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: "CI builders"
name: "CI builders"
repo_url: "https://chromium.googlesource.com/crosvm/crosvm"
refs: "regexp:refs/heads/main"
manifest_name: "REVISION"
builders {
name: "buildbucket/luci.crosvm.ci/Verify CL"
}
}

View file

@ -15,6 +15,26 @@ job {
builder: "Example Builder"
}
}
job {
id: "Verify CL"
realm: "ci"
acl_sets: "ci"
buildbucket {
server: "cr-buildbucket.appspot.com"
bucket: "ci"
builder: "Verify CL"
}
}
trigger {
id: "main source"
realm: "ci"
acl_sets: "ci"
triggers: "Verify CL"
gitiles {
repo: "https://chromium.googlesource.com/crosvm/crosvm"
refs: "regexp:refs/heads/main"
}
}
acl_sets {
name: "ci"
acls {

View file

@ -77,4 +77,8 @@ realms {
}
realms {
name: "try"
bindings {
role: "role/buildbucket.builderServiceAccount"
principals: "user:crosvm-luci-try-builder@crosvm-infra.iam.gserviceaccount.com"
}
}

View file

@ -124,3 +124,52 @@ luci.builder(
schedule = "with 1m interval",
service_account = "crosvm-luci-ci-builder@crosvm-infra.iam.gserviceaccount.com",
)
# Create builders for change verifier
def verify_builder(bucket):
luci.builder(
name = "Verify CL",
bucket = bucket,
executable = luci.recipe(
name = "verify_cl",
),
service_account = "crosvm-luci-%s-builder@crosvm-infra.iam.gserviceaccount.com" % bucket,
dimensions = {
"os": "Ubuntu",
"cpu": "x86-64",
"pool": "luci.crosvm.%s" % bucket,
},
)
verify_builder("try")
verify_builder("ci")
# Create CQ group to watch crosvm
luci.cq_group(
name = "main_repo",
watch = cq.refset(
repo = "https://chromium.googlesource.com/crosvm/crosvm",
refs = ["refs/heads/.+"], # will watch all branches
),
)
# Attach our "Verify CL" builder to this CQ group.
luci.cq_tryjob_verifier(
builder = "try/Verify CL",
cq_group = "main_repo",
)
# Configure postsubmit tests running in ci pool
luci.gitiles_poller(
name = "main source",
bucket = "ci",
repo = "https://chromium.googlesource.com/crosvm/crosvm",
triggers = ["ci/Verify CL"],
)
luci.console_view(
name = "CI builders",
repo = "https://chromium.googlesource.com/crosvm/crosvm",
entries = [
luci.console_view_entry(builder = "ci/Verify CL"),
],
)