diff --git a/chch-calendar.sh b/chch-calendar.sh index 80598a7..137196a 100755 --- a/chch-calendar.sh +++ b/chch-calendar.sh @@ -6,13 +6,21 @@ CHCH_ICAL="/var/www/chch_api/chch.ical" WIKI_PATH="/var/www/chch/" RAND="$(date +%s)$RANDOM$RANDOM$RANDOM" CHCH_ICAL_TMP="/tmp/chch_$RAND.ical" +CHCH_ICAL_FAIL="/tmp/chch_ical_wget_failed" rm -rf /tmp/chch_*.ical -wget "$CHCH_ICAL_SRC" -O "$CHCH_ICAL_TMP" -q -T 45 +wget "$CHCH_ICAL_SRC" -O "$CHCH_ICAL_TMP" -q -T 45 -t 1 if [ $? -ne 0 ]; then - echo "ERROR: wget failed to download calendar" >&2 + if [ ! -f "$CHCH_ICAL_FAIL" ]; then + echo "ERROR: wget failed to download calendar" >&2 + touch "$CHCH_ICAL_FAIL" + fi else - mv "$CHCH_ICAL_TMP" "$CHCH_ICAL" + mv "$CHCH_ICAL_TMP" "$CHCH_ICAL" >/dev/null 2>&1 + if [ -f "$CHCH_ICAL_FAIL" ]; then + echo "INFO: wget recovered from previous error" >&2 + rm -rf "$CHCH_ICAL_FAIL" + fi fi