#!/usr/bin/env bash # Prevent travis from timing out after 10 minutes of no output tick() { (while true; do sleep 300; echo; done) & local PID=$! disown "$@" local RET=$? kill $PID return $RET } export -f tick retry() { local tries=$1 shift local i=0 while [ "$i" -lt "$tries" ]; do "$@" && return 0 sleep $((2**((i++)))) done return 1 } export -f retry