Commit d6373d01 authored by Garrett Beaty's avatar Garrett Beaty Committed by Commit Bot

Set project_trigger_overrides to trigger branch builders.

(cherry picked from commit b2d7d5eb3cab76d97b381040f217f82456d3b587)

Bug: 1056428
Change-Id: I53a06c4fa23faec756e303372922eba774bd1c20
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2298295Reviewed-by: default avatarStephen Martinis <martiniss@chromium.org>
Commit-Queue: Garrett Beaty <gbeaty@chromium.org>
Cr-Original-Commit-Position: refs/branch-heads/4195@{#4}
Cr-Original-Branched-From: 1d94de40-refs/heads/master@{#785504}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2303987
Cr-Commit-Position: refs/heads/master@{#790153}
parent bcac4b44
......@@ -152,13 +152,17 @@ xcode_cache = struct(
_DEFAULT_BUILDERLESS_OS_CATEGORIES = [os_category.LINUX]
def _chromium_tests_property(*, bucketed_triggers):
def _chromium_tests_property(*, bucketed_triggers, project_trigger_overrides):
chromium_tests = {}
bucketed_triggers = defaults.get_value('bucketed_triggers', bucketed_triggers)
if bucketed_triggers:
chromium_tests['bucketed_triggers'] = True
project_trigger_overrides = defaults.get_value('project_trigger_overrides', project_trigger_overrides)
if project_trigger_overrides:
chromium_tests['project_trigger_overrides'] = project_trigger_overrides
return chromium_tests or None
......@@ -246,6 +250,7 @@ defaults = args.defaults(
goma_use_luci_auth = None,
mastername = None,
os = None,
project_trigger_overrides = None,
pool = None,
ssd = args.COMPUTE,
use_clang_coverage = False,
......@@ -279,6 +284,7 @@ def builder(
pool=args.DEFAULT,
ssd=args.DEFAULT,
bucketed_triggers=args.DEFAULT,
project_trigger_overrides=args.DEFAULT,
configure_kitchen=args.DEFAULT,
goma_backend=args.DEFAULT,
goma_debug=args.DEFAULT,
......@@ -341,6 +347,11 @@ def builder(
builder being defined should have the bucket prepended to the builder name
to trigger. If True, the 'bucketed_triggers' field will be set in the
'$build/chromium_tests' property. By default, considered False.
* project_trigger_overrides - a dict mapping the LUCI projects declared in
recipe BotSpecs to the LUCI project to use when triggering builders. When
this builder triggers another builder, if the BotSpec for that builder has
a LUCI project that is a key in this mapping, the corresponding value will
be used instead.
* configure_kitchen - a boolean indicating whether to configure kitchen. If
True, emits a property to set the 'git_auth' and 'devshell' fields of the
'$kitchen' property. By default, considered False.
......@@ -446,6 +457,7 @@ def builder(
chromium_tests = _chromium_tests_property(
bucketed_triggers = bucketed_triggers,
project_trigger_overrides = project_trigger_overrides,
)
if chromium_tests != None:
properties['$build/chromium_tests'] = chromium_tests
......
......@@ -15,6 +15,7 @@ to set the default value. Can also be accessed through `ci.defaults`.
load('@stdlib//internal/graph.star', 'graph')
load('@stdlib//internal/luci/common.star', 'keys')
load('//project.star', 'settings')
load('./builders.star', 'builders')
load('./args.star', 'args')
......@@ -101,6 +102,7 @@ def set_defaults(milestone_vars, **kwargs):
header = '//chromium-header.textpb',
os = builders.os.LINUX_DEFAULT,
pool = 'luci.chromium.ci',
project_trigger_overrides = {'chromium': settings.project} if not settings.is_master else None,
repo = 'https://chromium.googlesource.com/chromium/src',
service_account = 'chromium-ci-builder@chops-service-accounts.iam.gserviceaccount.com',
swarming_tags = ['vpython:native-python-wrapper'],
......
......@@ -6,7 +6,7 @@
# See https://chromium.googlesource.com/infra/luci/luci-go/+/HEAD/lucicfg/doc/README.md
# for information on starlark/lucicfg
load('//project.star', 'master_only_exec')
load('//project.star', 'master_only_exec', 'settings')
lucicfg.check_version(
min = '1.15.1',
......@@ -45,7 +45,7 @@ lucicfg.emit(
)
luci.project(
name = 'chromium',
name = settings.project,
buildbucket = 'cr-buildbucket.appspot.com',
logdog = 'luci-logdog.appspot.com',
milo = 'luci-milo.appspot.com',
......
......@@ -3,6 +3,7 @@
# found in the LICENSE file.
settings = struct(
project = 'chromium',
# Switch this to False for branches
is_master = True,
ref = 'refs/heads/master',
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment