keep_alive 456 B

1234567891011121314151617181920212223242526272829
  1. #!/bin/bash
  2. # Run a command, printing periodically to keep travis alive.
  3. PID=$$
  4. # Print output to avoid travis killing us
  5. watchdog() {
  6. for i in $(seq 2 2 500); do
  7. sleep 120
  8. echo "(running, ${i}m total)"
  9. done
  10. echo "TIMED OUT"
  11. kill -SIGKILL $PID
  12. }
  13. watchdog 2>/dev/null &
  14. WATCHDOG_PID=$!
  15. time "$@"
  16. CODE=$?
  17. if [ $CODE != 0 ]; then
  18. echo "FAILED $CODE"
  19. kill $WATCHDOG_PID
  20. exit $CODE
  21. fi
  22. kill $WATCHDOG_PID
  23. exit 0