Adds Toaster buildsteps for setup toaster environment (installs requirements), start/stop a toaster instance and run tests.
Signed-off-by: Aníbal Limón <anibal.li...@linux.intel.com> --- .../autobuilder/buildsteps/ToasterRunTests.py | 31 ++++++++++++++++++++ .../autobuilder/buildsteps/ToasterSetupVenv.py | 31 ++++++++++++++++++++ .../autobuilder/buildsteps/ToasterStart.py | 32 +++++++++++++++++++++ .../autobuilder/buildsteps/ToasterStop.py | 33 ++++++++++++++++++++++ 4 files changed, 127 insertions(+) create mode 100644 lib/python2.7/site-packages/autobuilder/buildsteps/ToasterRunTests.py create mode 100644 lib/python2.7/site-packages/autobuilder/buildsteps/ToasterSetupVenv.py create mode 100644 lib/python2.7/site-packages/autobuilder/buildsteps/ToasterStart.py create mode 100644 lib/python2.7/site-packages/autobuilder/buildsteps/ToasterStop.py diff --git a/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterRunTests.py b/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterRunTests.py new file mode 100644 index 0000000..141768c --- /dev/null +++ b/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterRunTests.py @@ -0,0 +1,31 @@ +''' +Created on Feb 15, 2016 + +__author__ = "Anibal (alimon) Limon" +__copyright__ = "Copyright 2016, Intel Corp." +__credits__ = ["Anibal Limon"] +__license__ = "GPL" +__version__ = "2.0" +__maintainer__ = "Anibal Limon" +__email__ = "anibal.li...@linux.intel.com" +''' + +from lib.buildsteps import ShellCommandCleanEnv +import os + +class ToasterRunTests(ShellCommandCleanEnv): + haltOnFailure = True + flunkOnFailure = True + name = "ToasterRunTests" + + def __init__(self, factory, argdict=None, **kwargs): + self.factory = factory + self.description = "Running toaster tests..." + + oe_cmd = "source ./oe-init-build-env;" + venv_cmd = "source venv/bin/activate;" + cmd = "DISPLAY=:1 toaster-test --run-all-tests --verbose" + + self.command = oe_cmd + venv_cmd + cmd + + ShellCommandCleanEnv.__init__(self, factory, argdict, **kwargs) diff --git a/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterSetupVenv.py b/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterSetupVenv.py new file mode 100644 index 0000000..54cf1e7 --- /dev/null +++ b/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterSetupVenv.py @@ -0,0 +1,31 @@ +''' +Created on Feb 15, 2016 + +__author__ = "Anibal (alimon) Limon" +__copyright__ = "Copyright 2016, Intel Corp." +__credits__ = ["Anibal Limon"] +__license__ = "GPL" +__version__ = "2.0" +__maintainer__ = "Anibal Limon" +__email__ = "anibal.li...@linux.intel.com" +''' + +from lib.buildsteps import ShellCommandCleanEnv + +class ToasterSetupVenv(ShellCommandCleanEnv): + haltOnFailure = True + flunkOnFailure = True + name = "ToasterSetupVenv" + + def __init__(self, factory, argdict=None, **kwargs): + self.factory = factory + self.description = "Creating virtualenv..." + + oe_cmd = "source ./oe-init-build-env;" + venv_cmd = "virtualenv venv; source venv/bin/activate;" + install_cmd = "pip install -r ../bitbake/toaster-requirements.txt;" + install_tests_cmd = "pip install -r ../bitbake/toaster-tests-requirements.txt;" + + self.command = oe_cmd + venv_cmd + install_cmd + install_tests_cmd + + ShellCommandCleanEnv.__init__(self, factory, argdict, **kwargs) diff --git a/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterStart.py b/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterStart.py new file mode 100644 index 0000000..14cf9db3 --- /dev/null +++ b/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterStart.py @@ -0,0 +1,32 @@ +''' +Created on Feb 15, 2016 + +__author__ = "Anibal (alimon) Limon" +__copyright__ = "Copyright 2016, Intel Corp." +__credits__ = ["Anibal Limon"] +__license__ = "GPL" +__version__ = "2.0" +__maintainer__ = "Anibal Limon" +__email__ = "anibal.li...@linux.intel.com" +''' + +from lib.buildsteps import ShellCommandCleanEnv +import os + +class ToasterStart(ShellCommandCleanEnv): + haltOnFailure = True + flunkOnFailure = True + name = "ToasterStart" + + def __init__(self, factory, argdict=None, **kwargs): + self.factory = factory + self.description = "Starting toaster..." + + oe_cmd = "source ./oe-init-build-env;" + venv_cmd = "source venv/bin/activate;" + start_cmd = "../bitbake/lib/toaster/tests/helpers.py -a start" \ + " -d $(readlink -e ../)" + + self.command = oe_cmd + venv_cmd + start_cmd + + ShellCommandCleanEnv.__init__(self, factory, argdict, **kwargs) diff --git a/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterStop.py b/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterStop.py new file mode 100644 index 0000000..6fda0e8 --- /dev/null +++ b/lib/python2.7/site-packages/autobuilder/buildsteps/ToasterStop.py @@ -0,0 +1,33 @@ +''' +Created on Feb 15, 2016 + +__author__ = "Anibal (alimon) Limon" +__copyright__ = "Copyright 2016, Intel Corp." +__credits__ = ["Anibal Limon"] +__license__ = "GPL" +__version__ = "2.0" +__maintainer__ = "Anibal Limon" +__email__ = "anibal.li...@linux.intel.com" +''' + +from lib.buildsteps import ShellCommandCleanEnv +import os + +class ToasterStop(ShellCommandCleanEnv): + alwaysRun = True + haltOnFailure = True + flunkOnFailure = True + name = "ToasterStop" + + def __init__(self, factory, argdict=None, **kwargs): + self.factory = factory + self.description = "Stopping toaster..." + + oe_cmd = "source ./oe-init-build-env;" + venv_cmd = "source venv/bin/activate;" + start_cmd = "../bitbake/lib/toaster/tests/helpers.py -a stop" \ + " -d $(readlink -e ../)" + + self.command = oe_cmd + venv_cmd + start_cmd + + ShellCommandCleanEnv.__init__(self, factory, argdict, **kwargs) -- 2.1.4 -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto