X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/e85c26419c2d62e74963f1b7c31a0bac1369e38a..c208f8066094c1804b2599dce08e8704b9983d8a:/docker/run.sh diff --git a/docker/run.sh b/docker/run.sh index 1aee3566ad..418771553a 100755 --- a/docker/run.sh +++ b/docker/run.sh @@ -96,22 +96,29 @@ function start_container { fi } -function make_keep_volume { +declare -a keep_volumes + +# Initialize the global `keep_volumes' array. If any keep volumes +# already appear to exist (mounted volumes with a top-level "keep" +# directory), use them; create temporary volumes if necessary. +# +function make_keep_volumes () { # Mount a keep volume if we don't already have one - local keepvolume="" for mountpoint in $(cut -d ' ' -f 2 /proc/mounts); do if [[ -d "$mountpoint/keep" && "$mountpoint" != "/" ]]; then - keepvolume=$mountpoint + keep_volumes+=($mountpoint) fi done - if [[ "$keepvolume" == '' ]]; then - keepvolume=$(mktemp -d) - echo "mounting 512M tmpfs keep volume in $keepvolume" - sudo mount -t tmpfs -o size=512M tmpfs $keepvolume - mkdir $keepvolume/keep - fi - echo "$keepvolume" + # Create any keep volumes that do not yet exist. + while [ ${#keep_volumes[*]} -lt 2 ] + do + new_keep=$(mktemp -d) + echo >&2 "mounting 512M tmpfs keep volume in $new_keep" + sudo mount -t tmpfs -o size=512M tmpfs $new_keep + mkdir $new_keep/keep + keep_volumes+=($new_keep) + done } $start_doc && start_container "9898:80" "doc_server" '' '' "arvados/doc" @@ -119,6 +126,18 @@ $start_sso && start_container "9901:443" "sso_server" '' '' "arvados/sso" $start_api && start_container "9900:443" "api_server" '' "sso_server:sso" "arvados/api" $start_workbench && start_container "9899:80" "workbench_server" '' "api_server:api" "arvados/workbench" -keepvolume=$(make_keep_volume) -$start_keep && start_container "25107:25107" "keep_server_0" "$keepvolume:/dev/keep-0" '' "arvados/warehouse" -$start_keep && start_container "25108:25107" "keep_server_1" "$keepvolume:/dev/keep-0" '' "arvados/warehouse" +declare -a keep_volumes +make_keep_volumes +$start_keep && start_container "25107:25107" "keep_server_0" "${keep_volumes[0]}:/dev/keep-0" "api_server:api" "arvados/warehouse" +$start_keep && start_container "25108:25107" "keep_server_1" "${keep_volumes[1]}:/dev/keep-0" "api_server:api" "arvados/warehouse" + +ARVADOS_API_HOST=$(ip_address "api_server") +ARVADOS_API_HOST_INSECURE=yes +ARVADOS_API_TOKEN=$(grep '^\w' api/generated/secret_token.rb | cut -d "'" -f 2) + +echo "To run a test suite:" + +echo "export ARVADOS_API_HOST=$ARVADOS_API_HOST" +echo "export ARVADOS_API_HOST_INSECURE=$ARVADOS_API_HOST_INSECURE" +echo "export ARVADOS_API_TOKEN=$ARVADOS_API_TOKEN" +echo "python -m unittest discover ../sdk/python"