CI: handle differences in date(1) better

This commit is contained in:
Adriaan de Groot 2020-01-28 15:18:54 +01:00
parent bf0515d188
commit ede7d94b40

View File

@ -40,6 +40,13 @@ do
test -n "$XMLLINT" && break test -n "$XMLLINT" && break
done done
# Distinguish GNU date from BSD date
if date +%s -d "1 week ago" > /dev/null 2>&1 ; then
last_week() { date +%s -d "1 week ago" ; }
else
last_week() { date -v1w +%s; }
fi
### CHECK WORKING DIRECTORY ### CHECK WORKING DIRECTORY
# #
@ -59,7 +66,7 @@ else
fi fi
# No unsaved changes; enforce a string freeze of one week # No unsaved changes; enforce a string freeze of one week
DATE_PREV=$( git log -1 translation --date=unix | sed -e '/^Date:/s+.*:++p' -e d ) DATE_PREV=$( git log -1 translation --date=unix | sed -e '/^Date:/s+.*:++p' -e d )
DATE_HEAD=$( date +%s -d "1 week ago" || date -v1w +%s ) DATE_HEAD=$( last_week )
test "$DATE_PREV" -le "$DATE_HEAD" || { echo "! Translation tag has not aged enough." ; git log -1 translation ; exit 1 ; } test "$DATE_PREV" -le "$DATE_HEAD" || { echo "! Translation tag has not aged enough." ; git log -1 translation ; exit 1 ; }
# Tag is good, do real work of checking strings: collect names of relevant files # Tag is good, do real work of checking strings: collect names of relevant files