config/schedulers: Allow filtering of quick build targets by release as well as full

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2021-02-14 14:21:18 +00:00
parent 6587ff7613
commit 1ba5d93212
2 changed files with 22 additions and 6 deletions

View File

@ -85,7 +85,10 @@ trigger_builders_wait_full = trigger_builders_wait_shared + [
"qemux86-64-ptest", "qemux86-64-ltp", "qemuarm64-ptest", "qemuarm64-ltp", "meta-intel", "meta-arm" "qemux86-64-ptest", "qemux86-64-ltp", "qemuarm64-ptest", "qemuarm64-ltp", "meta-intel", "meta-arm"
] ]
trigger_builders_wait_releases = { trigger_builders_wait_quick_releases = {
}
trigger_builders_wait_full_releases = {
"sumo" : trigger_builders_wait_shared + ["qemumips-alt", "edgerouter-alt", "mpc8315e-rdb-alt", "qemuppc-alt", "qemux86-world-alt", "sumo" : trigger_builders_wait_shared + ["qemumips-alt", "edgerouter-alt", "mpc8315e-rdb-alt", "qemuppc-alt", "qemux86-world-alt",
"oe-selftest-ubuntu", "oe-selftest-debian", "oe-selftest-centos"] "oe-selftest-ubuntu", "oe-selftest-debian", "oe-selftest-centos"]
} }

View File

@ -110,15 +110,28 @@ for builder in config.subbuilders:
buttonName="Force Build")) buttonName="Force Build"))
@util.renderer @util.renderer
def builderNamesFromConfig(props): def builderNamesFromConfigQuick(props):
#log.msg("builderNames: Sourcestamp %s, props %s" % (str(props.sourcestamps), str(props)))
yp_branch = props.sourcestamps[0]['branch']
builders = config.trigger_builders_wait_quick
for b in config.trigger_builders_wait_quick_releases:
if yp_branch and yp_branch.startswith(b):
log.msg("builderNames: Filtering branch %s due to entry %s" % (str(yp_branch), str(b)))
builders = config.trigger_builders_wait_quick_releases[b]
return builders
@util.renderer
def builderNamesFromConfigFull(props):
#log.msg("builderNames: Sourcestamp %s, props %s" % (str(props.sourcestamps), str(props))) #log.msg("builderNames: Sourcestamp %s, props %s" % (str(props.sourcestamps), str(props)))
yp_branch = props.sourcestamps[0]['branch'] yp_branch = props.sourcestamps[0]['branch']
builders = config.trigger_builders_wait_full builders = config.trigger_builders_wait_full
for b in config.trigger_builders_wait_releases: for b in config.trigger_builders_wait_full_releases:
if yp_branch and yp_branch.startswith(b): if yp_branch and yp_branch.startswith(b):
log.msg("builderNames: Filtering branch %s due to entry %s" % (str(yp_branch), str(b))) log.msg("builderNames: Filtering branch %s due to entry %s" % (str(yp_branch), str(b)))
builders = config.trigger_builders_wait_releases[b] builders = config.trigger_builders_wait_full_releases[b]
# Only run performance runs on release builds # Only run performance runs on release builds
if props.getProperty("is_release", False): if props.getProperty("is_release", False):
@ -134,10 +147,10 @@ class ourTriggerable(sched.Triggerable):
# nightly builder triggers various other builders # nightly builder triggers various other builders
wait_quick = ourTriggerable(name="wait-quick", wait_quick = ourTriggerable(name="wait-quick",
builderNames=config.trigger_builders_wait_quick) builderNames=builderNamesFromConfigQuick)
schedulers.append(wait_quick) schedulers.append(wait_quick)
wait_full = ourTriggerable(name="wait-full", wait_full = ourTriggerable(name="wait-full",
builderNames=builderNamesFromConfig) builderNames=builderNamesFromConfigFull)
schedulers.append(wait_full) schedulers.append(wait_full)
def parent_scheduler(target): def parent_scheduler(target):