projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
17816: Make singularity-in-arvbox work
[arvados.git]
/
build
/
run-tests.sh
diff --git
a/build/run-tests.sh
b/build/run-tests.sh
index ca53dbc66e244f1ba86551796cf48cead259810f..e309d24011d4f01079ae7707c2e6b1f0bbd45832 100755
(executable)
--- a/
build/run-tests.sh
+++ b/
build/run-tests.sh
@@
-88,7
+88,7
@@
lib/cloud/cloudtest
lib/dispatchcloud
lib/dispatchcloud/container
lib/dispatchcloud/scheduler
lib/dispatchcloud
lib/dispatchcloud/container
lib/dispatchcloud/scheduler
-lib/dispatchcloud/ssh
_
executor
+lib/dispatchcloud/sshexecutor
lib/dispatchcloud/worker
lib/mount
lib/pam
lib/dispatchcloud/worker
lib/mount
lib/pam
@@
-162,9
+162,12
@@
temp_preserve=
clear_temp() {
if [[ -z "$temp" ]]; then
clear_temp() {
if [[ -z "$temp" ]]; then
- # we did
n'
t even get as far as making a temp dir
+ # we did
no
t even get as far as making a temp dir
:
elif [[ -z "$temp_preserve" ]]; then
:
elif [[ -z "$temp_preserve" ]]; then
+ # Go creates readonly dirs in the module cache, which cause
+ # "rm -rf" to fail unless we chmod first.
+ chmod -R u+w "$temp"
rm -rf "$temp"
else
echo "Leaving behind temp dirs in $temp"
rm -rf "$temp"
else
echo "Leaving behind temp dirs in $temp"
@@
-241,7
+244,7
@@
sanity_checks() {
|| fatal "No gitolite. Try: apt-get install gitolite3"
echo -n 'npm: '
npm --version \
|| fatal "No gitolite. Try: apt-get install gitolite3"
echo -n 'npm: '
npm --version \
- || fatal "No npm. Try: wget -O- https://nodejs.org/dist/v
6.11.2/node-v6.11.2-linux-x64.tar.xz | sudo tar -C /usr/local -xJf - && sudo ln -s ../node-v6.11.2
-linux-x64/bin/{node,npm} /usr/local/bin/"
+ || fatal "No npm. Try: wget -O- https://nodejs.org/dist/v
10.23.1/node-v10.23.1-linux-x64.tar.xz | sudo tar -C /usr/local -xJf - && sudo ln -s ../node-v10.23.1
-linux-x64/bin/{node,npm} /usr/local/bin/"
echo -n 'cadaver: '
cadaver --version | grep -w cadaver \
|| fatal "No cadaver. Try: apt-get install cadaver"
echo -n 'cadaver: '
cadaver --version | grep -w cadaver \
|| fatal "No cadaver. Try: apt-get install cadaver"
@@
-538,16
+541,16
@@
setup_ruby_environment() {
tmpdir_gem_home="$(env - PATH="$PATH" HOME="$GEMHOME" gem env gempath | cut -f1 -d:)"
PATH="$tmpdir_gem_home/bin:$PATH"
tmpdir_gem_home="$(env - PATH="$PATH" HOME="$GEMHOME" gem env gempath | cut -f1 -d:)"
PATH="$tmpdir_gem_home/bin:$PATH"
- export GEM_PATH="$tmpdir_gem_home"
+ export GEM_PATH="$tmpdir_gem_home
:$(gem env gempath)
"
echo "Will install dependencies to $(gem env gemdir)"
echo "Will install dependencies to $(gem env gemdir)"
- echo "Will install arvados gems to $tmpdir_gem_home"
+ echo "Will install
bundler and
arvados gems to $tmpdir_gem_home"
echo "Gem search path is GEM_PATH=$GEM_PATH"
echo "Gem search path is GEM_PATH=$GEM_PATH"
- bundle="$
(gem env gempath | cut -f1 -d:)
/bin/bundle"
+ bundle="$
tmpdir_gem_home
/bin/bundle"
(
export HOME=$GEMHOME
bundlers="$(gem list --details bundler)"
(
export HOME=$GEMHOME
bundlers="$(gem list --details bundler)"
- versions=(1.1
1.0
1.17.3 2.0.2)
+ versions=(1.1
6.6
1.17.3 2.0.2)
for v in ${versions[@]}; do
if ! echo "$bundlers" | fgrep -q "($v)"; then
gem install --user $(for v in ${versions[@]}; do echo bundler:${v}; done)
for v in ${versions[@]}; do
if ! echo "$bundlers" | fgrep -q "($v)"; then
gem install --user $(for v in ${versions[@]}; do echo bundler:${v}; done)
@@
-555,7
+558,7
@@
setup_ruby_environment() {
fi
done
"$bundle" version | tee /dev/stderr | grep -q 'version 2'
fi
done
"$bundle" version | tee /dev/stderr | grep -q 'version 2'
- )
#|| fatal 'install bundler' ## This is needed for now.
+ )
|| fatal 'install bundler'
fi
}
fi
}
@@
-644,19
+647,21
@@
install_env() {
which goimports >/dev/null || go get golang.org/x/tools/cmd/goimports || fatal "Go setup failed"
setup_virtualenv "$VENV3DIR"
which goimports >/dev/null || go get golang.org/x/tools/cmd/goimports || fatal "Go setup failed"
setup_virtualenv "$VENV3DIR"
+ . "$VENV3DIR/bin/activate"
# Needed for run_test_server.py which is used by certain (non-Python) tests.
# Needed for run_test_server.py which is used by certain (non-Python) tests.
+ # pdoc3 needed to generate the Python SDK documentation.
(
set -e
(
set -e
+ "${VENV3DIR}/bin/pip3" install wheel
"${VENV3DIR}/bin/pip3" install PyYAML
"${VENV3DIR}/bin/pip3" install PyYAML
- "${VENV3DIR}/bin/pip3" install httplib2
+ "${VENV3DIR}/bin/pip3" install httplib2
"${VENV3DIR}/bin/pip3" install future
"${VENV3DIR}/bin/pip3" install google-api-python-client
"${VENV3DIR}/bin/pip3" install ciso8601
"${VENV3DIR}/bin/pip3" install future
"${VENV3DIR}/bin/pip3" install google-api-python-client
"${VENV3DIR}/bin/pip3" install ciso8601
- "${VENV3DIR}/bin/pip3" install wheel
- "${VENV3DIR}/bin/pip3" install setuptools
"${VENV3DIR}/bin/pip3" install pycurl
"${VENV3DIR}/bin/pip3" install ws4py
"${VENV3DIR}/bin/pip3" install pycurl
"${VENV3DIR}/bin/pip3" install ws4py
+ "${VENV3DIR}/bin/pip3" install pdoc3
cd "$WORKSPACE/sdk/python"
python3 setup.py install
) || fatal "installing PyYAML and sdk/python failed"
cd "$WORKSPACE/sdk/python"
python3 setup.py install
) || fatal "installing PyYAML and sdk/python failed"
@@
-704,7
+709,7
@@
do_test() {
stop_services
check_arvados_config "$1"
;;
stop_services
check_arvados_config "$1"
;;
- gofmt | doc | lib/cli | lib/cloud/azure | lib/cloud/ec2 | lib/cloud/cloudtest | lib/cmd | lib/dispatchcloud/ssh
_
executor | lib/dispatchcloud/worker)
+ gofmt | doc | lib/cli | lib/cloud/azure | lib/cloud/ec2 | lib/cloud/cloudtest | lib/cmd | lib/dispatchcloud/sshexecutor | lib/dispatchcloud/worker)
check_arvados_config "$1"
# don't care whether services are running
;;
check_arvados_config "$1"
# don't care whether services are running
;;
@@
-956,7
+961,7
@@
install_services/api() {
|| return 1
(
|| return 1
(
- set -e
+ set -e
x
cd "$WORKSPACE/services/api"
export RAILS_ENV=test
if "$bundle" exec rails db:environment:set ; then
cd "$WORKSPACE/services/api"
export RAILS_ENV=test
if "$bundle" exec rails db:environment:set ; then
@@
-990,7
+995,7
@@
test_doc() {
(
set -e
cd "$WORKSPACE/doc"
(
set -e
cd "$WORKSPACE/doc"
- ARVADOS_API_HOST=
qr1hi
.arvadosapi.com
+ ARVADOS_API_HOST=
pirca
.arvadosapi.com
# Make sure python-epydoc is installed or the next line won't
# do much good!
PYTHONPATH=$WORKSPACE/sdk/python/ "$bundle" exec rake linkchecker baseurl=file://$WORKSPACE/doc/.site/ arvados_workbench_host=https://workbench.$ARVADOS_API_HOST arvados_api_host=$ARVADOS_API_HOST
# Make sure python-epydoc is installed or the next line won't
# do much good!
PYTHONPATH=$WORKSPACE/sdk/python/ "$bundle" exec rake linkchecker baseurl=file://$WORKSPACE/doc/.site/ arvados_workbench_host=https://workbench.$ARVADOS_API_HOST arvados_api_host=$ARVADOS_API_HOST
@@
-1090,19
+1095,12
@@
install_all() {
do_install sdk/perl
do_install sdk/cli
do_install services/login-sync
do_install sdk/perl
do_install sdk/cli
do_install services/login-sync
- ## FIXME, ignore all python2
for p in "${pythonstuff[@]}"
do
for p in "${pythonstuff[@]}"
do
- dir=${p%:py3}
- if [[ ${dir} = ${p} ]]; then
- if [[ -z ${skip[python2]} ]]; then
- do_install ${dir} pip
- fi
- elif [[ -n ${PYTHON3} ]]; then
- if [[ -z ${skip[python3]} ]]; then
- do_install ${dir} pip "$VENV3DIR/bin/"
- fi
- fi
+ dir=${p%:py3}
+ if [[ -z ${skip[python3]} ]]; then
+ do_install ${dir} pip "$VENV3DIR/bin/"
+ fi
done
for g in "${gostuff[@]}"
do
done
for g in "${gostuff[@]}"
do
@@
-1130,18
+1128,11
@@
test_all() {
do_test sdk/cli
do_test services/login-sync
do_test sdk/java-v2
do_test sdk/cli
do_test services/login-sync
do_test sdk/java-v2
- ## FIXME, ignore all python2
for p in "${pythonstuff[@]}"
do
dir=${p%:py3}
for p in "${pythonstuff[@]}"
do
dir=${p%:py3}
- if [[ ${dir} = ${p} ]]; then
- if [[ -z ${skip[python2]} ]]; then
- do_test ${dir} pip
- fi
- elif [[ -n ${PYTHON3} ]]; then
- if [[ -z ${skip[python3]} ]]; then
- do_test ${dir} pip "$VENV3DIR/bin/"
- fi
+ if [[ -z ${skip[python3]} ]]; then
+ do_test ${dir} pip "$VENV3DIR/bin/"
fi
done
fi
done
@@
-1156,6
+1147,14
@@
test_all() {
do_test apps/workbench_profile
}
do_test apps/workbench_profile
}
+test_go() {
+ do_test gofmt
+ for g in "${gostuff[@]}"
+ do
+ do_test "$g" go
+ done
+}
+
help_interactive() {
echo "== Interactive commands:"
echo "TARGET (short for 'test DIR')"
help_interactive() {
echo "== Interactive commands:"
echo "TARGET (short for 'test DIR')"