3 # Copyright (C) The Arvados Authors. All rights reserved.
5 # SPDX-License-Identifier: AGPL-3.0
15 echo >&2 "usage: $0 [options] <identifier>"
17 echo >&2 " <identifier> Arvados cluster name"
19 echo >&2 "$0 options:"
20 echo >&2 " -d, --debug Enable debug output"
21 echo >&2 " -h, --help Display this help and exit"
22 echo >&2 " -s, --scopes Print required scopes to run tests"
23 echo >&2 " -j, --jobs <jobs> Allow N jobs at once; 1 job with no arg."
27 function print_scopes {
28 echo >&2 " Required scope for the token used to run the tests:"
30 echo >&2 " arv api_client_authorization create_system_auth --scopes "
31 echo >&2 "[\"GET /arvados/v1/virtual_machines\","
32 echo >&2 "\"GET /arvados/v1/keep_services\","
33 echo >&2 "\"GET /arvados/v1/keep_services/\","
34 echo >&2 "\"GET /arvados/v1/groups\","
35 echo >&2 "\"GET /arvados/v1/groups/\","
36 echo >&2 "\"GET /arvados/v1/links\","
37 echo >&2 "\"GET /arvados/v1/collections\","
38 echo >&2 "\"POST /arvados/v1/collections\","
39 echo >&2 "\"POST /arvados/v1/links\","
40 echo >&2 "\"GET /arvados/v1/users/current\","
41 echo >&2 "\"POST /arvados/v1/users/current\","
42 echo >&2 "\"GET /arvados/v1/jobs\","
43 echo >&2 "\"POST /arvados/v1/jobs\","
44 echo >&2 "\"GET /arvados/v1/pipeline_instances\","
45 echo >&2 "\"GET /arvados/v1/pipeline_instances/\","
46 echo >&2 "\"POST /arvados/v1/pipeline_instances\","
47 echo >&2 "\"GET /arvados/v1/collections/\","
48 echo >&2 "\"POST /arvados/v1/collections/\","
49 echo >&2 "\"GET /arvados/v1/container_requests\","
50 echo >&2 "\"GET /arvados/v1/container_requests/\","
51 echo >&2 "\"POST /arvados/v1/container_requests\","
52 echo >&2 "\"POST /arvados/v1/container_requests/\","
53 echo >&2 "\"GET /arvados/v1/containers\","
54 echo >&2 "\"GET /arvados/v1/containers/\","
55 echo >&2 "\"GET /arvados/v1/repositories\","
56 echo >&2 "\"GET /arvados/v1/repositories/\","
57 echo >&2 "\"GET /arvados/v1/logs\" ]"
61 # NOTE: This requires GNU getopt (part of the util-linux package on Debian-based distros).
62 TEMP=`getopt -o hdlp:sj: \
63 --long help,scopes,debug,jobs: \
66 if [ $? != 0 ] ; then echo "Use -h for help"; exit 1 ; fi
67 # Note the quotes around `$TEMP': they are essential!
97 date=`date +'%Y-%m-%d %H:%M:%S'`
98 printf "%s\n" "$date $1"
101 title "Loading ARVADOS_API_HOST and ARVADOS_API_TOKEN"
102 if [[ "$ARVADOS_API_HOST" == "" ]] || [[ "$ARVADOS_API_TOKEN" == "" ]]; then
103 title "ERROR: ARVADOS_API_HOST and/or ARVADOS_API_TOKEN environment variables are not set."
107 if [[ ! -e cwl-v1.2 ]]; then
108 git clone --depth 1 https://github.com/common-workflow-language/cwl-v1.2.git
114 exec cwltest -Sdocker_entrypoint,timelimit_invalid_wf -N307 \
115 -j$JOBS --timeout=900 --tool arvados-cwl-runner --test conformance_tests.yaml -- --compute-checksum --disable-reuse --eval-timeout 60