#!/usr/bin/env bash # 2025-10-15 Hyperling # Create script which does the photo checking so that it can be called by # scripts other than just run.sh, such as if it needs used in check_git.sh. ## Setup ## DIR="$(dirname -- "${BASH_SOURCE[0]}")" PROG="$(basename -- "${BASH_SOURCE[0]}")" cd $DIR DIR="`pwd`" NAME="'$PROG'" function log { echo -e "`date` : $NAME - $1" } ## Parameters ## ports="$1" ## Main ## count=1 http_code=0 port="${ports%% *}" photos_uri=":$port/photos/" beg_time="$SECONDS" while [[ $http_code != "200" ]]; do log "Sleeping for '$count' while waiting for $photos_uri to come up." sleep $count log "Checking if $photos_uri is available." http_code="`curl --silent --fail -w '\n%{http_code}' localhost$photos_uri | tail -n 1`" log "Check for $photos_uri responded with '$http_code'." if (( $count >= 10 )); then log "Giving up on loading $photos_uri after '$count' attempts." break else count=$(( count + 1 )) fi done end_time="$SECONDS" time="$(( $end_time - $beg_time ))" log "Finished checking for /photos/ after '$time' seconds." exit 0