Merge "Add framework for selenium tests on test slaves."
This commit is contained in:
commit
3ffc500842
@ -100,6 +100,9 @@ for f in `find . -iname *.erb` ; do
|
|||||||
done
|
done
|
||||||
""")
|
""")
|
||||||
|
|
||||||
|
def _builder_selenium(self, xml_parent):
|
||||||
|
self._add_script(xml_parent, '/usr/local/jenkins/slave_scripts/run-selenium.sh')
|
||||||
|
|
||||||
def _builder_shell(self, xml_parent, data):
|
def _builder_shell(self, xml_parent, data):
|
||||||
self._add_script(xml_parent, data)
|
self._add_script(xml_parent, data)
|
||||||
|
|
||||||
|
@ -21,3 +21,31 @@ values:
|
|||||||
tarball_project: 'horizon'
|
tarball_project: 'horizon'
|
||||||
doc_publisher_site: 'docs.openstack.org'
|
doc_publisher_site: 'docs.openstack.org'
|
||||||
node: 'precise'
|
node: 'precise'
|
||||||
|
|
||||||
|
---
|
||||||
|
# gate-horizon-selenium
|
||||||
|
main:
|
||||||
|
name: 'gate-horizon-selenium'
|
||||||
|
review_site: 'review.openstack.org'
|
||||||
|
github_org: 'openstack'
|
||||||
|
project: 'horizon'
|
||||||
|
concurrent: 'true'
|
||||||
|
|
||||||
|
logrotate:
|
||||||
|
daysToKeep: 28
|
||||||
|
numToKeep: -1
|
||||||
|
artifactDaysToKeep: -1
|
||||||
|
artifactNumToKeep: -1
|
||||||
|
|
||||||
|
triggers:
|
||||||
|
- zuul
|
||||||
|
|
||||||
|
builders:
|
||||||
|
- gerrit_git_prep
|
||||||
|
- selenium
|
||||||
|
|
||||||
|
scm:
|
||||||
|
scm: 'false'
|
||||||
|
|
||||||
|
assignednode:
|
||||||
|
node: 'precise'
|
||||||
|
28
modules/jenkins_slave/files/slave_scripts/run-selenium.sh
Executable file
28
modules/jenkins_slave/files/slave_scripts/run-selenium.sh
Executable file
@ -0,0 +1,28 @@
|
|||||||
|
#!/bin/bash -xe
|
||||||
|
|
||||||
|
# If a bundle file is present, call tox with the jenkins version of
|
||||||
|
# the test environment so it is used. Otherwise, use the normal
|
||||||
|
# (non-bundle) test environment. Also, run pip freeze on the
|
||||||
|
# resulting environment at the end so that we have a record of exactly
|
||||||
|
# what packages we ended up testing.
|
||||||
|
#
|
||||||
|
|
||||||
|
venv=venv
|
||||||
|
|
||||||
|
VDISPLAY=99
|
||||||
|
DIMENSIONS='1280x1024x24'
|
||||||
|
/usr/bin/Xvfb :${VDISPLAY} -screen 0 ${DIMENSIONS} 2>&1 > /dev/null &
|
||||||
|
|
||||||
|
set +e
|
||||||
|
DISPLAY=:${VDISPLAY} tox -e$venv -- /bin/bash run_tests.sh -N --with-selenium
|
||||||
|
result=$?
|
||||||
|
|
||||||
|
pkill Xvfb 2>&1 > /dev/null
|
||||||
|
set -e
|
||||||
|
|
||||||
|
echo "Begin pip freeze output from test virtualenv:"
|
||||||
|
echo "======================================================================"
|
||||||
|
.tox/$venv/bin/pip freeze
|
||||||
|
echo "======================================================================"
|
||||||
|
|
||||||
|
exit $result
|
@ -32,6 +32,7 @@ class jenkins_slave($ssh_key, $sudo = false, $bare = false, $user = true) {
|
|||||||
"docbook5-xml", # for building openstack docs
|
"docbook5-xml", # for building openstack docs
|
||||||
"docbook-xsl", # for building openstack docs
|
"docbook-xsl", # for building openstack docs
|
||||||
"ebtables",
|
"ebtables",
|
||||||
|
"firefox", # for selenium tests
|
||||||
"gawk",
|
"gawk",
|
||||||
"graphviz",
|
"graphviz",
|
||||||
"iptables",
|
"iptables",
|
||||||
@ -73,6 +74,7 @@ class jenkins_slave($ssh_key, $sudo = false, $bare = false, $user = true) {
|
|||||||
"vlan",
|
"vlan",
|
||||||
"wget",
|
"wget",
|
||||||
"xsltproc", # for building openstack docs
|
"xsltproc", # for building openstack docs
|
||||||
|
"xvfb", # for selenium tests
|
||||||
"pyflakes"]
|
"pyflakes"]
|
||||||
|
|
||||||
if ($bare == false) {
|
if ($bare == false) {
|
||||||
|
@ -169,6 +169,7 @@ projects:
|
|||||||
- gate-horizon-pep8
|
- gate-horizon-pep8
|
||||||
- gate-horizon-python26
|
- gate-horizon-python26
|
||||||
- gate-horizon-python27
|
- gate-horizon-python27
|
||||||
|
- gate-horizon-selenium
|
||||||
- gate-tempest-devstack-vm
|
- gate-tempest-devstack-vm
|
||||||
gate:
|
gate:
|
||||||
- gate-horizon-merge:
|
- gate-horizon-merge:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user