mirror of
git://git.yoctoproject.org/yocto-autobuilder2.git
synced 2025-07-19 20:59:02 +02:00
builders/runconfig: Add ability to skip targets if the don't exist in the branch configuration
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
eef335b400
commit
c8db821860
|
@ -2,7 +2,7 @@ from buildbot.plugins import *
|
||||||
|
|
||||||
from yoctoabb import config
|
from yoctoabb import config
|
||||||
from yoctoabb.steps.writelayerinfo import WriteLayerInfo
|
from yoctoabb.steps.writelayerinfo import WriteLayerInfo
|
||||||
from yoctoabb.steps.runconfig import get_publish_dest, get_publish_resultdir, get_publish_name, RunConfigCheckSteps
|
from yoctoabb.steps.runconfig import get_publish_dest, get_publish_resultdir, get_publish_name, RunConfigCheckSteps, TargetPresent
|
||||||
from buildbot.process.results import Results, SUCCESS, FAILURE, CANCELLED, WARNINGS, SKIPPED, EXCEPTION, RETRY
|
from buildbot.process.results import Results, SUCCESS, FAILURE, CANCELLED, WARNINGS, SKIPPED, EXCEPTION, RETRY
|
||||||
|
|
||||||
from twisted.python import log
|
from twisted.python import log
|
||||||
|
@ -53,6 +53,7 @@ def create_builder_factory():
|
||||||
mode='incremental',
|
mode='incremental',
|
||||||
haltOnFailure=True,
|
haltOnFailure=True,
|
||||||
name='Fetch yocto-autobuilder-helper'))
|
name='Fetch yocto-autobuilder-helper'))
|
||||||
|
f.addStep(TargetPresent())
|
||||||
f.addStep(steps.SetProperties(properties=ensure_props_set))
|
f.addStep(steps.SetProperties(properties=ensure_props_set))
|
||||||
f.addStep(WriteLayerInfo(name='Write main layerinfo.json', haltOnFailure=True))
|
f.addStep(WriteLayerInfo(name='Write main layerinfo.json', haltOnFailure=True))
|
||||||
f.addStep(steps.ShellCommand(
|
f.addStep(steps.ShellCommand(
|
||||||
|
|
|
@ -201,3 +201,17 @@ class RunConfigCheckSteps(shell.ShellCommand):
|
||||||
except KeyError:
|
except KeyError:
|
||||||
log = yield self.addLog(logName)
|
log = yield self.addLog(logName)
|
||||||
log.addStdout(message)
|
log.addStdout(message)
|
||||||
|
|
||||||
|
class TargetPresent(shell.ShellCommand):
|
||||||
|
name = "Check if branch needs this target"
|
||||||
|
command=[util.Interpolate("%(prop:builddir)s/yocto-autobuilder-helper/scripts/target-present"), util.Property("buildername")]
|
||||||
|
|
||||||
|
def evaluateCommand(self, cmd):
|
||||||
|
# If the command fails, fall back to old style run-config execution
|
||||||
|
rc = super().evaluateCommand(cmd)
|
||||||
|
if rc != SUCCESS:
|
||||||
|
self.finished(SKIPPED)
|
||||||
|
self.build.results = SKIPPED
|
||||||
|
self.descriptionDone = "Target not present in branch configuration"
|
||||||
|
self.build.buildFinished(["Target not present in branch configuration"], SKIPPED)
|
||||||
|
return SUCCESS
|
||||||
|
|
Loading…
Reference in New Issue
Block a user