2025-11-30 16:25:51 -03:00
|
|
|
PARAM folder AS STRING LIKE "default.gbdrive" DESCRIPTION "Folder to backup files from" OPTIONAL
|
|
|
|
|
PARAM days_old AS INTEGER LIKE 3 DESCRIPTION "Archive files older than this many days" OPTIONAL
|
|
|
|
|
|
|
|
|
|
DESCRIPTION "Backup and archive expired files to server storage"
|
|
|
|
|
|
|
|
|
|
IF NOT folder THEN
|
|
|
|
|
folder = "default.gbdrive"
|
|
|
|
|
END IF
|
|
|
|
|
|
|
|
|
|
IF NOT days_old THEN
|
|
|
|
|
days_old = 3
|
|
|
|
|
END IF
|
|
|
|
|
|
|
|
|
|
list = DIR folder
|
|
|
|
|
archived = 0
|
2025-11-21 10:44:29 -03:00
|
|
|
|
|
|
|
|
FOR EACH item IN list
|
2025-11-30 16:25:51 -03:00
|
|
|
oldDays = DATEDIFF today, item.modified, "day"
|
2025-11-21 10:44:29 -03:00
|
|
|
|
2025-11-30 16:25:51 -03:00
|
|
|
IF oldDays > days_old THEN
|
2025-11-21 10:44:29 -03:00
|
|
|
blob = UPLOAD item
|
|
|
|
|
|
2025-11-30 16:25:51 -03:00
|
|
|
WITH logEntry
|
|
|
|
|
action = "archived"
|
|
|
|
|
date = today
|
|
|
|
|
time = now
|
|
|
|
|
path = item.path
|
|
|
|
|
name = item.name
|
|
|
|
|
size = item.size
|
|
|
|
|
modified = item.modified
|
|
|
|
|
md5 = blob.md5
|
|
|
|
|
END WITH
|
|
|
|
|
|
|
|
|
|
SAVE "log.xlsx", logEntry
|
2025-11-21 10:44:29 -03:00
|
|
|
DELETE item
|
2025-11-30 16:25:51 -03:00
|
|
|
archived = archived + 1
|
2025-11-21 10:44:29 -03:00
|
|
|
END IF
|
|
|
|
|
NEXT
|
2025-11-30 16:25:51 -03:00
|
|
|
|
|
|
|
|
TALK "Backup complete. " + archived + " files archived."
|
|
|
|
|
|
|
|
|
|
RETURN archived
|