X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/32468a5b95280d671f4648dea6d2ff10d171378d..2d816cf50f92cb6d984a8821f6c6ddd621f5140b:/jenkins/run-tests.sh diff --git a/jenkins/run-tests.sh b/jenkins/run-tests.sh index 0557ab1060..e9241501f7 100755 --- a/jenkins/run-tests.sh +++ b/jenkins/run-tests.sh @@ -39,12 +39,16 @@ checkexit() { fi } +goget() { + go get -t "git.curoverse.com/arvados.git/$1" + checkexit "$1 install" +} + gotest() { title "Starting $1 tests" cd "$WORKSPACE" - go get -t "git.curoverse.com/arvados.git/$1" \ - && go test "git.curoverse.com/arvados.git/$1" + go test "git.curoverse.com/arvados.git/$1" checkexit "$1 tests" title "$1 tests complete" @@ -115,61 +119,69 @@ title "API server tests complete" # Install CLI gem's dependencies. -cd "$WORKSPACE" -cd sdk/cli +cd "$WORKSPACE/sdk/cli" bundle install --deployment +cd "$WORKSPACE" +gostuff="services/keepstore services/keepproxy sdk/go/arvadosclient sdk/go/keepclient sdk/go/streamer" +for dir in $gostuff +do + goget "$dir" +done + # Install the Python SDK early. Various other test suites (like # keepproxy) bring up run_test_server.py, which imports the arvados # module. We can't actually *test* the Python SDK yet though, because # its own test suite brings up some of those other programs (like # keepproxy). +cd "$WORKSPACE/sdk/python" python setup.py egg_info -b ".$(git log --format=format:%ct.%h -n1 .)" sdist rotate --keep=1 --match .tar.gz pip install dist/arvados-python-client-0.1.*.tar.gz checkexit "Python SDK install" -# Keep daemons - -gotest services/keepstore +cd "$WORKSPACE/services/fuse" +python setup.py egg_info -b ".$(git log --format=format:%ct.%h -n1 .)" sdist rotate --keep=1 --match .tar.gz +pip install dist/arvados_fuse-0.1.*.tar.gz -gotest services/keepproxy +checkexit "FUSE install" -# Python SDK (already installed, but we didn't run its tests yet) +# Python SDK. We test this before testing keepproxy: keepproxy runs +# run_test_server.py, which depends on the yaml package, which is in +# tests_require but not install_requires, and therefore does not get +# installed by setuptools until we run "setup.py test" *and* install +# the .egg files that setup.py downloads. title "Starting Python SDK tests" -cd "$WORKSPACE" -cd sdk/python +cd "$WORKSPACE/sdk/python" python setup.py test - checkexit "Python SDK tests" +easy_install *.egg + +title "Python tests complete" # FUSE driver -cd "$WORKSPACE" -cd services/fuse +title "Starting FUSE tests" +cd "$WORKSPACE/services/fuse" python setup.py test - checkexit "FUSE tests" +easy_install *.egg -python setup.py egg_info -b ".$(git log --format=format:%ct.%h -n1 .)" sdist rotate --keep=1 --match .tar.gz -pip install dist/arvados_fuse-0.1.*.tar.gz - -checkexit "FUSE install" +title "FUSE tests complete" -title "Python SDK tests complete" # Go SDK packages -for dir in sdk/go/arvadosclient sdk/go/keepclient sdk/go/streamer +for dir in $gostuff do gotest "$dir" done -# WORKBENCH +# Workbench title "Starting workbench tests" cd "$WORKSPACE" cd apps/workbench