Skip to content

Commit 4d4f9f5

Browse files
validate date is in the past
1 parent 63d39cc commit 4d4f9f5

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

.github/workflows/recover_s3_repository.yml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,28 @@ jobs:
4646
steps:
4747
- name: Validate datetime
4848
run: |
49-
set -e
49+
echo "Validating that datetime is in correct format"
5050
datetime="${{ github.event.inputs.date_month }}-${{ github.event.inputs.date_day }}-${{ github.event.inputs.date_year }} ${{ github.event.inputs.time }} +0000"
5151
# Use Python's strptome (same as s3-pit-restore) to check if it's a valid datetime
5252
python3 -c "from datetime import datetime; datetime.strptime('$datetime', '%m-%d-%Y %H:%M:%S %z')" 2> /dev/null
5353
exit_code=$?
5454
if [ $exit_code -ne 0 ]; then
55+
echo "Invalid datetime: $datetime"
56+
exit 1
57+
fi
58+
echo "datetime format is correct"
59+
echo ""
60+
61+
echo "Validating that datetime is inot in the future"
62+
# check that datetime is not in the future
63+
python3 -c "from datetime import datetime,timezone; import sys; sys.exit(1) if datetime.strptime('$datetime', '%m-%d-%Y %H:%M:%S %z') >= datetime.now(timezone.utc) else sys.exit(0)"
64+
exit_code=$?
65+
if [ $exit_code -ne 0 ]; then
66+
echo "datetime cannot be in the future: $datetime"
5567
exit 1
5668
fi
69+
echo "datetime is not in the future"
70+
5771
echo "DATE_TIME=$datetime" >> $GITHUB_ENV
5872
5973
- name: Validate path input does not have leading nor trailing slash

0 commit comments

Comments
 (0)