mirror of https://gerrit.osmocom.org/osmo-ci
35 lines
1.2 KiB
Bash
Executable File
35 lines
1.2 KiB
Bash
Executable File
#!/bin/sh -e
|
|
# Remove nightly archives older than one month (OS#4862)
|
|
echo "Redirecting all output to: /home/pkgmirror/rm-old-nightly-archives.log"
|
|
exec >"/home/pkgmirror/rm-old-nightly-archives.log" 2>&1
|
|
|
|
DRY=0
|
|
|
|
# Get removal date in seconds since epoch and display it
|
|
DATE_RM_SEC=$(expr $(date +%s) - 3600 \* 24 \* 32)
|
|
DATE_RM_STR=$(date -d "@$DATE_RM_SEC" +"%Y-%m-%d")
|
|
echo "Removing nightly archives from $DATE_RM_STR and older (DRY=$DRY)"
|
|
|
|
cd /downloads/obs-mirror
|
|
|
|
for i in */nightly; do
|
|
# "Last modified" isn't set to the date of the dir name for some
|
|
# archives, so parse the date from the dir name instead
|
|
DATE_DIR="$(basename "$(dirname "$i")")" # e.g. "20210604-002301"
|
|
DATE_DIR_SEC="$(date -d "$(echo "$DATE_DIR" | cut -d "-" -f 1)" +%s)"
|
|
if [ -z "$DATE_DIR_SEC" ]; then
|
|
echo "ERROR: $i: failed to parse date from dir name"
|
|
continue
|
|
fi
|
|
|
|
if [ "$DATE_DIR_SEC" -lt "$DATE_RM_SEC" ]; then
|
|
DATE_DIR_STR="$(date -d "@$DATE_DIR_SEC" +"%Y-%m-%d")"
|
|
echo "Removing $i ($DATE_DIR_STR)..."
|
|
if [ "$DRY" = 0 ]; then
|
|
rm -r "$i"
|
|
fi
|
|
fi
|
|
done
|
|
|
|
echo "Done"
|