github.com/pachyderm/pachyderm@v1.13.4/etc/testing/circle_tests.sh (about) 1 #!/bin/bash 2 3 set -euo pipefail 4 5 # Get a kubernetes cluster 6 # Specify the slots so that future builds on this branch+suite id automatically 7 # clean up previous VMs and pools 8 BRANCH="${CIRCLE_BRANCH:-$GITHUB_REF}" 9 echo "Getting VM." 10 time testctl get --config .testfaster.yml --slot "${BRANCH},${BUCKET}" --pool-slot "pachyderm,${BRANCH}" 11 echo "Finished getting VM." 12 13 echo "==== KUBECONFIG ====" 14 cat kubeconfig 15 echo "====================" 16 17 KUBECONFIG="$(pwd)/kubeconfig" 18 export KUBECONFIG 19 20 echo "Fetching new code in VM" 21 time ./etc/testing/testctl-ssh.sh -- bash -c "set -x; cd project/pachyderm; pwd; git fetch; git reset --hard HEAD; git checkout ${CIRCLE_SHA1}" 22 echo "Finished fetching new code in VM" 23 24 #echo "Copying context to runner." 25 ## trailing slash means _contents_ of this directory are copied _into_ target 26 ## directory. 27 #time ./etc/testing/testctl-rsync.sh "$(pwd)"/ /root/project/pachyderm 28 #echo "Finished copying context." 29 30 # NB: https://serverfault.com/questions/482907/setting-a-variable-for-a-given-ssh-host 31 32 ENV_VARS=(PPS_BUCKETS AUTH_BUCKETS GOPROXY ENT_ACT_CODE BUCKET CIRCLE_BRANCH RUN_BAD_TESTS DOCKER_PWD) 33 34 # For object tests, provide the parameters and credentials for running against object storage providers 35 if [[ "$BUCKET" == "OBJECT" ]]; then 36 ENV_VARS+=(AMAZON_CLIENT_ID AMAZON_CLIENT_SECRET AMAZON_CLIENT_BUCKET AMAZON_CLIENT_REGION) 37 ENV_VARS+=(ECS_CLIENT_ID ECS_CLIENT_SECRET ECS_CLIENT_BUCKET ECS_CLIENT_CUSTOM_ENDPOINT) 38 ENV_VARS+=(GOOGLE_CLIENT_BUCKET GOOGLE_CLIENT_CREDS) 39 ENV_VARS+=(GOOGLE_CLIENT_HMAC_ID GOOGLE_CLIENT_HMAC_SECRET GOOGLE_CLIENT_REGION) 40 ENV_VARS+=(MICROSOFT_CLIENT_ID MICROSOFT_CLIENT_SECRET MICROSOFT_CLIENT_CONTAINER) 41 fi 42 43 TESTCTL_OPTIONS=() 44 for VAR in "${ENV_VARS[@]}"; do 45 TESTCTL_OPTIONS+=("-o" "SendEnv=$VAR") 46 done 47 48 echo "Starting test $BUCKET." 49 time ./etc/testing/testctl-ssh.sh "${TESTCTL_OPTIONS[@]}" \ 50 -- ./project/pachyderm/etc/testing/circle_tests_inner.sh "$@" 51 echo "Finished test $BUCKET."