Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(487)

Unified Diff: master/skia_master_scripts/utils.py

Issue 13861012: Change builder names (Closed) Base URL: http://skia.googlecode.com/svn/buildbot/
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: master/skia_master_scripts/utils.py
===================================================================
--- master/skia_master_scripts/utils.py (revision 8794)
+++ master/skia_master_scripts/utils.py (working copy)
@@ -34,8 +34,9 @@
import config_private
+BUILDER_NAME_SEP = '-'
CATEGORY_BUILD = ' Build'
-TRYBOT_NAME_SUFFIX = '_Trybot'
+TRYBOT_NAME_SUFFIX = 'Trybot'
TRY_SCHEDULER_SVN = 'skia_try_svn'
TRY_SCHEDULER_RIETVELD = 'skia_try_rietveld'
TRY_SCHEDULERS = [TRY_SCHEDULER_SVN, TRY_SCHEDULER_RIETVELD]
@@ -367,42 +368,73 @@
skia_all_subdirs = all_subdirs
-def MakeBuilderName(builder_base_name, config):
- """ Inserts config into builder_base_name at '%s', or if builder_base_name
- does not contain '%s', appends config to the end of builder_base_name,
- separated by an underscore. """
- try:
- return builder_base_name % config
- except TypeError:
- # If builder_base_name does not contain '%s'
- return '%s_%s' % (builder_base_name, config)
+class BuilderProperties:
+ def __init__(self, os, version, arch_width, model, gpu, role=None,
+ extra_config=None):
+ self.os = os
+ self.version = version
+ self.arch_width = arch_width
+ self.model = model
+ self.gpu = gpu
+ self.role = role
+ self.extra_config = extra_config
-def MakeCompileBuilderName(builder_base_name, release=False):
+def MakeBuilderName(builder_props, is_trybot=False):
+ """ Construct a builder name from a set of builder properties. """
+ if not isinstance(builder_props, BuilderProperties):
+ raise ValueError('MakeBuilderName must be provided an instance of '
+ 'BuilderProperties.')
+ os_version = '_'.join((builder_props.os, builder_props.version)) \
+ if builder_props.version else builder_props.os
+ name_parts = [os_version, builder_props.model, builder_props.gpu,
+ builder_props.role, builder_props.arch_width]
+ if builder_props.extra_config:
+ name_parts.append(builder_props.extra_config)
+ if is_trybot:
+ name_parts.append(TRYBOT_NAME_SUFFIX)
+ builder_name = ''
+ for part in name_parts:
+ if not part:
+ part = 'x'
+ if BUILDER_NAME_SEP in part:
+ raise ValueError('%s is not legal in %s' % (BUILDER_NAME_SEP, part))
+ if builder_name:
+ builder_name += BUILDER_NAME_SEP + part
+ else:
+ builder_name += part
+ return builder_name
+
+
+def MakeCompileBuilderName(builder_props, release=False, **kwargs):
if release:
- compile_name = 'Compile_Release'
+ builder_props.role = 'ReleaseCompile'
else:
- compile_name = 'Compile_Debug'
- return MakeBuilderName(builder_base_name, compile_name)
+ builder_props.role = 'DebugCompile'
+ return MakeBuilderName(builder_props, **kwargs)
-def MakeDebugBuilderName(builder_base_name):
- return MakeBuilderName(builder_base_name, skia_factory.CONFIG_DEBUG)
+def MakeDebugBuilderName(builder_props, **kwargs):
+ builder_props.role = skia_factory.CONFIG_DEBUG
+ return MakeBuilderName(builder_props, **kwargs)
-def MakeReleaseBuilderName(builder_base_name):
- return MakeBuilderName(builder_base_name, skia_factory.CONFIG_RELEASE)
+def MakeReleaseBuilderName(builder_props, **kwargs):
+ builder_props.role = skia_factory.CONFIG_RELEASE
+ return MakeBuilderName(builder_props, **kwargs)
-def MakeBenchBuilderName(builder_base_name):
- return MakeBuilderName(builder_base_name, skia_factory.CONFIG_BENCH)
+def MakeBenchBuilderName(builder_props, **kwargs):
+ builder_props.role = skia_factory.CONFIG_BENCH
+ return MakeBuilderName(builder_props, **kwargs)
-def MakeSchedulerName(builder_base_name):
- return MakeBuilderName(builder_base_name, 'Scheduler')
+def MakeSchedulerName(builder_props, **kwargs):
+ builder_props.role = 'Scheduler'
+ return MakeBuilderName(builder_props, **kwargs)
-def _MakeBuilderSet(helper, builder_base_name, gm_image_subdir,
+def _MakeBuilderSet(helper, builder_props, gm_image_subdir,
perf_output_basedir=None, extra_branches=None,
factory_type=None, do_compile=True, do_debug=True,
do_release=True, do_bench=True, try_schedulers=None,
@@ -419,20 +451,20 @@
if not extra_branches:
extra_branches = []
subdirs_to_checkout = set(extra_branches)
+ is_trybot = try_schedulers is not None
if gm_image_subdir:
gm_image_branch = 'gm-expected/%s' % gm_image_subdir
subdirs_to_checkout.add(gm_image_branch)
-
if try_schedulers:
scheduler_name = '|'.join(try_schedulers)
- builder_base_name = builder_base_name + TRYBOT_NAME_SUFFIX
else:
- scheduler_name = MakeSchedulerName(builder_base_name)
+ scheduler_name = MakeSchedulerName(builder_props)
branches = list(subdirs_to_checkout.union(SKIA_PRIMARY_SUBDIRS))
helper.AnyBranchScheduler(scheduler_name, branches=branches)
if do_compile:
- compile_debug_builder_name = MakeCompileBuilderName(builder_base_name,
+ compile_debug_builder_name = MakeCompileBuilderName(builder_props,
+ is_trybot=is_trybot,
release=False)
B(compile_debug_builder_name, 'f_%s' % compile_debug_builder_name,
# Do not add gatekeeper for trybots.
@@ -443,12 +475,13 @@
other_subdirs=subdirs_to_checkout,
configuration=skia_factory.CONFIG_DEBUG,
gm_image_subdir=gm_image_subdir,
- do_patch_step=(try_schedulers is not None),
+ do_patch_step=is_trybot,
perf_output_basedir=None,
compile_warnings_as_errors=compile_bot_warnings_as_errors,
**kwargs
).BuildCompileOnly())
- compile_release_builder_name = MakeCompileBuilderName(builder_base_name,
+ compile_release_builder_name = MakeCompileBuilderName(builder_props,
+ is_trybot=is_trybot,
release=True)
B(compile_release_builder_name, 'f_%s' % compile_release_builder_name,
# Do not add gatekeeper for trybots.
@@ -459,14 +492,15 @@
other_subdirs=subdirs_to_checkout,
configuration=skia_factory.CONFIG_RELEASE,
gm_image_subdir=gm_image_subdir,
- do_patch_step=(try_schedulers is not None),
+ do_patch_step=is_trybot,
perf_output_basedir=None,
compile_warnings_as_errors=compile_bot_warnings_as_errors,
**kwargs
).BuildCompileOnly())
if do_debug:
- debug_builder_name = MakeDebugBuilderName(builder_base_name)
+ debug_builder_name = MakeDebugBuilderName(builder_props,
+ is_trybot=is_trybot)
B(debug_builder_name, 'f_%s' % debug_builder_name,
scheduler=scheduler_name)
F('f_%s' % debug_builder_name, factory_type(
@@ -474,14 +508,15 @@
other_subdirs=subdirs_to_checkout,
configuration=skia_factory.CONFIG_DEBUG,
gm_image_subdir=gm_image_subdir,
- do_patch_step=(try_schedulers is not None),
+ do_patch_step=is_trybot,
perf_output_basedir=None,
compile_warnings_as_errors=False,
**kwargs
).Build())
if do_release:
- no_perf_builder_name = MakeReleaseBuilderName(builder_base_name)
+ no_perf_builder_name = MakeReleaseBuilderName(builder_props,
+ is_trybot=is_trybot)
B(no_perf_builder_name, 'f_%s' % no_perf_builder_name,
scheduler=scheduler_name)
F('f_%s' % no_perf_builder_name, factory_type(
@@ -489,14 +524,15 @@
other_subdirs=subdirs_to_checkout,
configuration=skia_factory.CONFIG_RELEASE,
gm_image_subdir=gm_image_subdir,
- do_patch_step=(try_schedulers is not None),
+ do_patch_step=is_trybot,
perf_output_basedir=None,
compile_warnings_as_errors=False,
**kwargs
).BuildNoPerf())
if do_bench:
- perf_builder_name = MakeBenchBuilderName(builder_base_name)
+ perf_builder_name = MakeBenchBuilderName(builder_props,
+ is_trybot=is_trybot)
B(perf_builder_name, 'f_%s' % perf_builder_name,
scheduler=scheduler_name)
F('f_%s' % perf_builder_name, factory_type(
@@ -504,7 +540,7 @@
other_subdirs=subdirs_to_checkout,
configuration=skia_factory.CONFIG_RELEASE,
gm_image_subdir=gm_image_subdir,
- do_patch_step=(try_schedulers is not None),
+ do_patch_step=is_trybot,
perf_output_basedir=perf_output_basedir,
compile_warnings_as_errors=False,
**kwargs
@@ -527,18 +563,19 @@
builder_factory_scheduler = [
# The Percommit housekeeper
- ('Skia_PerCommit_House_Keeping',
+ ('PerCommit-Housekeeping',
housekeeping_percommit_factory.HouseKeepingPerCommitFactory,
'skia_rel'),
# The Periodic housekeeper
- ('Skia_Periodic_House_Keeping',
+ ('Periodic-Housekeeping',
housekeeping_periodic_factory.HouseKeepingPeriodicFactory,
'skia_periodic'),
]
if do_trybots:
# Add the corresponding trybot builders to the above list.
builder_factory_scheduler.extend([
- (builder + TRYBOT_NAME_SUFFIX, factory, TRY_SCHEDULERS_STR)
+ (builder + BUILDER_NAME_SEP + TRYBOT_NAME_SUFFIX, factory,
+ TRY_SCHEDULERS_STR)
for (builder, factory, _scheduler) in builder_factory_scheduler])
for (builder_name, factory, scheduler) in builder_factory_scheduler:
« no previous file with comments | « master/master_builders_cfg.py ('k') | master/slaves.cfg » ('j') | master/slaves.cfg » ('J')

Powered by Google App Engine
This is Rietveld 408576698