aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--buildset-config.toaster/toaster-tests.conf17
-rw-r--r--lib/python2.7/site-packages/autobuilder/buildsteps/TestReport.py41
2 files changed, 58 insertions, 0 deletions
diff --git a/buildset-config.toaster/toaster-tests.conf b/buildset-config.toaster/toaster-tests.conf
index 0aa6b465..14a95aa5 100644
--- a/buildset-config.toaster/toaster-tests.conf
+++ b/buildset-config.toaster/toaster-tests.conf
@@ -4,6 +4,22 @@ repos: [{'poky':
{'repourl':'git://git.yoctoproject.org/poky',
'layerversion':{'core':'meta', 'yoctobsp':'meta-yocto-bsp', 'yocto':'meta-yocto', 'poky':'meta-poky'},
'branch':'master' }}]
+props: [{'testopia_category':{'prop_type':'StringParameter',
+ 'size': 32,
+ 'name': 'testopia_category',
+ 'label':'Category Full pass/Weekly:'}},
+ {'testopia_pversion':{'prop_type':'StringParameter',
+ 'size': 32,
+ 'name': 'testopia_pversion',
+ 'label':'Project :'}},
+ {'testopia_pmilestone':{'prop_type':'StringParameter',
+ 'size': 32,
+ 'name': 'testopia_pmilestone',
+ 'label':'Project :'}},
+ {'testopia_prevision':{'prop_type':'StringParameter',
+ 'size': 128,
+ 'name': 'testopia_prevision',
+ 'label':'Project :'}},]
steps: [{'SetDest':{}},
{'CheckOutLayers': {}},
{'RunPreamble': {}},
@@ -18,4 +34,5 @@ steps: [{'SetDest':{}},
{'Sleep': {'time': '120'}},
{'ToasterRunTests': {}},
{'ToasterStop': {}},
+ {'TestReport': {'product': 'Toaster', 'results_log' : 'toaster-tests/build/build/results-toaster.log'}},
]
diff --git a/lib/python2.7/site-packages/autobuilder/buildsteps/TestReport.py b/lib/python2.7/site-packages/autobuilder/buildsteps/TestReport.py
new file mode 100644
index 00000000..55548f8c
--- /dev/null
+++ b/lib/python2.7/site-packages/autobuilder/buildsteps/TestReport.py
@@ -0,0 +1,41 @@
+import os
+import platform
+
+from buildbot.steps.shell import ShellCommand
+from autobuilder.config import *
+
+class TestReport(ShellCommand):
+ haltOnFailure = False
+ flunkOnFailure = True
+ name = "TestReport"
+ def __init__(self, factory, argdict=None, **kwargs):
+ self.factory = factory
+ self.workerdir=os.path.join(os.path.join(YOCTO_ABBASE, "yocto-worker"))
+ for k, v in argdict.iteritems():
+ setattr(self, k, v)
+ # Timeout needs to be passed to LoggingBuildStep as a kwarg
+ self.timeout = 100000
+ kwargs['timeout']=self.timeout
+ ShellCommand.__init__(self, **kwargs)
+
+ def start(self):
+ self.tconfig = os.environ['TESTOPIA_UPDATE_CONFIG']
+ self.category = self.getProperty('testopia_category')
+ self.branch = self.getProperty('branch')
+ self.tenv = " ".join(platform.linux_distribution())
+ self.pversion = self.getProperty('testopia_pversion')
+ self.pmilestone = self.getProperty('testopia_pmilestone')
+ self.prevision = self.getProperty('testopia_prevision')
+ self.pdate = date.today.isoformat()
+
+ self.results_log = os.path.join(self.workdir, self.results_log)
+
+ program = os.path.join(YOCTO_ABBASE, 'qa-tools', 'testopia_update.py')
+ base_command = "%s --config %s -p %s -c %s -b %s -e %s --project-version %s --project-milestone %s --project-revision %s --project-date %s --debug --results-log %s" % (program, self.tconfig, self.product, self.category, self.branch, self.tenv, self.pversion, self.pmilestone, self.prevision, self.pdate, self.results_log)
+
+ create_command = base_command + " -a create"
+ update_command = base_command + " -a update"
+
+ self.command= "%s && %s" % (create_command, update_command)
+
+ ShellCommand.start(self)