diff --git a/check_photos.sh b/check_photos.sh new file mode 100755 index 0000000..b55c1bb --- /dev/null +++ b/check_photos.sh @@ -0,0 +1,46 @@ +#!/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 diff --git a/run.sh b/run.sh index bd972e7..7031151 100755 --- a/run.sh +++ b/run.sh @@ -123,28 +123,7 @@ log "Removing old index files." find files/photos/ -name "*".html -print -delete { check_main photos - # TBD/TODO: Move this section to check_photos.sh similar to check_git.sh. - 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." + $DIR/check_photos.sh "$ports" } & ## Main ##