sauce_connect.sh 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #!/bin/bash
  2. set -e -o pipefail
  3. # Setup and start Sauce Connect for your TravisCI build
  4. CONNECT_URL="https://saucelabs.com/downloads/sc-4.4.3-linux.tar.gz"
  5. CONNECT_DIR="/tmp/sauce-connect-$RANDOM"
  6. CONNECT_DOWNLOAD="sc-latest-linux.tar.gz"
  7. BROWSER_PROVIDER_READY_FILE="/tmp/sauce-connect-ready"
  8. CONNECT_LOG="/tmp/sauce-connect"
  9. CONNECT_STDOUT="/tmp/sauce-connect.stdout"
  10. CONNECT_STDERR="/tmp/sauce-connect.stderr"
  11. # Get Connect and start it
  12. mkdir -p $CONNECT_DIR
  13. cd $CONNECT_DIR
  14. curl $CONNECT_URL -o $CONNECT_DOWNLOAD 2> /dev/null 1> /dev/null
  15. mkdir sauce-connect
  16. tar --extract --file=$CONNECT_DOWNLOAD --strip-components=1 --directory=sauce-connect > /dev/null
  17. rm $CONNECT_DOWNLOAD
  18. SAUCE_ACCESS_KEY=`echo $SAUCE_ACCESS_KEY | rev`
  19. ARGS=""
  20. # Set tunnel-id only on Travis, to make local testing easier.
  21. if [ ! -z "$TRAVIS_JOB_NUMBER" ]; then
  22. ARGS="$ARGS --tunnel-identifier $TRAVIS_JOB_NUMBER"
  23. fi
  24. if [ ! -z "$BROWSER_PROVIDER_READY_FILE" ]; then
  25. ARGS="$ARGS --readyfile $BROWSER_PROVIDER_READY_FILE"
  26. fi
  27. echo "Starting Sauce Connect in the background, logging into:"
  28. echo " $CONNECT_LOG"
  29. echo " $CONNECT_STDOUT"
  30. echo " $CONNECT_STDERR"
  31. # -B java.com helps to disable Java update popups in IE.
  32. sauce-connect/bin/sc -u $SAUCE_USERNAME -k $SAUCE_ACCESS_KEY $ARGS \
  33. --logfile $CONNECT_LOG -B java.com &
  34. # Wait for Connect to be ready before exiting
  35. printf "Connecting to Sauce."
  36. while [ ! -f $BROWSER_PROVIDER_READY_FILE ]; do
  37. printf "."
  38. sleep .5
  39. done
  40. echo "Connected"