Skip to content

Commit 6632f5a

Browse files
committed
Move parameter validation to a function
1 parent e9d434b commit 6632f5a

File tree

2 files changed

+28
-18
lines changed

2 files changed

+28
-18
lines changed

tracker_automations/continuous_manage_queues/continuous_manage_queues.sh

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -72,27 +72,10 @@ movemax=${movemax:-3}
7272
lastweekdate=${lastweekdate:-$(date -d "${releasedate} -7day" +%Y-%m-%d)}
7373
dryrun=${dryrun:-}
7474

75-
# Verify that $releasedate has a correct YYYY-MM-DD format
76-
if [[ ! ${releasedate} =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
77-
echo "ERROR: \$releasedate. Incorrect YYYY-MM-DD format detected: ${releasedate}"
78-
exit 1
79-
fi
80-
81-
# Verify that $lastweekdate has a correct YYYY-MM-DD format
82-
if [[ ! ${lastweekdate} =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
83-
echo "ERROR: \$lastweekdate. Incorrect YYYY-MM-DD format detected: ${lastweekdate}"
84-
exit 1
85-
fi
86-
8775
# Today
8876
nowdate=$(date +%Y%m%d)
8977

90-
# Verify that the current date is not well past the on-sync period. (Normally 2 weeks but making it 4 weeks just in case).
91-
onsyncenddate=$(date -d "${releasedate} +28day" +%Y%m%d)
92-
if [ $nowdate -gt $onsyncenddate ]; then
93-
echo "ERROR: The current date is already past the on-sync period. Please make sure the Release date ($releasedate) is configured correctly."
94-
exit 1
95-
fi
78+
run_param_validation $releasedate $lastweekdate
9679

9780
# Decide if we are going to proceed with behaviour A (before release) or behaviour B (after release)
9881
behaviorAB=

tracker_automations/continuous_manage_queues/lib.sh

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -389,3 +389,30 @@ function run_C() {
389389
echo "$BUILD_NUMBER $BUILD_TIMESTAMP ${issue} moved out from current: held" >> "${logfile}"
390390
done
391391
}
392+
393+
function run_param_validation() {
394+
nowdate=$(date +%Y%m%d)
395+
releasedate=$1
396+
lastweekdate=${2:-$(date -d "${releasedate} -7day" +%Y-%m-%d)}
397+
398+
# Verify that $releasedate has a correct YYYY-MM-DD format
399+
if [[ ! ${releasedate} =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
400+
echo "ERROR: \$releasedate. Incorrect YYYY-MM-DD format detected: ${releasedate}"
401+
return 1
402+
fi
403+
404+
# Verify that $lastweekdate has a correct YYYY-MM-DD format
405+
if [[ ! ${lastweekdate} =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
406+
echo "ERROR: \$lastweekdate. Incorrect YYYY-MM-DD format detected: ${lastweekdate}"
407+
return 1
408+
fi
409+
410+
# Verify that the current date is not well past the on-sync period. (Normally 2 weeks but making it 4 weeks just in case).
411+
onsyncenddate=$(date -d "${releasedate} +28day" +%Y%m%d)
412+
if [ $nowdate -gt $onsyncenddate ]; then
413+
echo "ERROR: The current date is already past the on-sync period. Please make sure the Release date ($releasedate) is configured correctly."
414+
return 1
415+
fi
416+
417+
echo "Parameters validated."
418+
}

0 commit comments

Comments
 (0)