Compare commits
	
		
			2 Commits
		
	
	
		
			1755144a85
			...
			b8f96227cc
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | b8f96227cc | ||
|  | 9e704bd440 | 
| @ -12,7 +12,6 @@ lit="\e[93m" | ||||
| op="\e[39m" | ||||
| info="\e[96m" | ||||
| note="\e[95m" | ||||
| stamp="[`date +%Y-%m-%d` `date +%H:%M:%S`]" | ||||
| 
 | ||||
| 
 | ||||
| ### Functions ### | ||||
| @ -90,6 +89,11 @@ function scriptHelp { | ||||
|     exit 1 | ||||
| } | ||||
| 
 | ||||
| ### generate dynamic timestamps | ||||
| function stamp { | ||||
|     echo `date +%F" "%T` | ||||
| } | ||||
| 
 | ||||
| ### quit -- exit the script after logging any errors, warnings, etc. | ||||
| function quit { | ||||
|     # list generated warnings, if any | ||||
| @ -106,7 +110,7 @@ function quit { | ||||
|     fi | ||||
|     if [ -z "${exitError}" ]; then | ||||
|         # exit cleanly | ||||
|         echo -e "${note}${stamp} --- ${scriptName} completed" \ | ||||
|         echo -e "${note}[$(stamp)] --- ${scriptName} completed" \ | ||||
|             "---${normal}" >> "$logFile" | ||||
|         exit 0 | ||||
|     else | ||||
| @ -162,10 +166,10 @@ function cleanup { | ||||
|     checkResult="$?" | ||||
|     if [ "$checkResult" = "0" ]; then | ||||
|         # directory still exists | ||||
|         exitWarn+=("${stamp}_111") | ||||
|         exitWarn+=("[$(stamp)]_111") | ||||
|     else | ||||
|         # directory removed | ||||
|         echo -e "${op}${stamp} Removed SQL temp directory${normal}" \ | ||||
|         echo -e "${op}[$(stamp)] Removed SQL temp directory${normal}" \ | ||||
|             >> "$logFile" | ||||
|     fi | ||||
| 
 | ||||
| @ -173,21 +177,21 @@ function cleanup { | ||||
|     # check value of 'clean503' to see if this is necessary (=1) otherwise, skip | ||||
|     if [ "$clean503" = "1" ]; then | ||||
|         # proceed with cleanup | ||||
|         echo -e "${op}${stamp} Removing 503 error page..." >> "$logFile" | ||||
|         echo -e "${op}[$(stamp)] Removing 503 error page..." >> "$logFile" | ||||
|         rm -f "$webroot/$err503File" >> "$logFile" 2>&1 | ||||
|         # verify file is actually gone | ||||
|         checkExist ff "$webroot/$err503File" | ||||
|         checkResult="$?" | ||||
|         if [ "$checkResult" = "0" ]; then | ||||
|             # file still exists | ||||
|             exitWarn+=("${stamp}_5030") | ||||
|             exitWarn+=("[$(stamp)]_5030") | ||||
|         else | ||||
|             # file removed | ||||
|             echo -e "${info}${stamp} -- [INFO] 503 page removed from webroot" \ | ||||
|             echo -e "${info}[$(stamp)] -- [INFO] 503 page removed from webroot" \ | ||||
|                 "--${normal}" >> "$logFile" | ||||
|         fi | ||||
|     else | ||||
|         echo -e "${op}${stamp} 503 error page never copied to webroot," \ | ||||
|         echo -e "${op}[$(stamp)] 503 error page never copied to webroot," \ | ||||
|             "nothing to cleanup" >> "$logFile" | ||||
|     fi | ||||
| 
 | ||||
| @ -195,10 +199,10 @@ function cleanup { | ||||
|     ncMaint off | ||||
|     # check if successful | ||||
|     if [ "$maintResult" = "0" ]; then | ||||
|         echo -e "${info}${stamp} -- [INFO] NextCloud now in regular" \ | ||||
|         echo -e "${info}[$(stamp)] -- [INFO] NextCloud now in regular" \ | ||||
|                 "operating mode --${normal}" >> "$logFile" | ||||
|         else | ||||
|             exitError+=("${stamp}_101") | ||||
|             exitError+=("[$(stamp)]_101") | ||||
|             quit | ||||
|     fi | ||||
| } | ||||
| @ -425,9 +429,9 @@ fi | ||||
| 
 | ||||
| 
 | ||||
| ### Log start of script operations | ||||
| echo -e "${note}${stamp}--- Start $scriptName execution ---${normal}" \ | ||||
| echo -e "${note}[$(stamp)]--- Start $scriptName execution ---${normal}" \ | ||||
|     >> "$logFile" | ||||
| echo -e "${info}${stamp}-- [INFO] Log file located at ${lit}${logFile}${info}" \ | ||||
| echo -e "${info}[$(stamp)]-- [INFO] Log file located at ${lit}${logFile}${info}" \ | ||||
|     "--${normal}" >> "$logFile" | ||||
| 
 | ||||
| 
 | ||||
| @ -438,7 +442,7 @@ export logFile="$logFile" | ||||
| ### Create sqlDump temporary directory and sqlDumpFile name | ||||
| sqlDumpDir=$( mktemp -d ) | ||||
| sqlDumpFile="backup-`date +%Y%m%d_%H%M%S`.sql" | ||||
| echo -e "${info}${stamp} -- [INFO] mySQL dump file will be stored" \ | ||||
| echo -e "${info}[$(stamp)] -- [INFO] mySQL dump file will be stored" \ | ||||
|     "at: ${lit}${sqlDumpDir}/${sqlDumpFile}${normal}" >> "$logFile" | ||||
| 
 | ||||
| 
 | ||||
| @ -451,9 +455,9 @@ echo -e "${info}${stamp} -- [INFO] mySQL dump file will be stored" \ | ||||
| ## Check if webroot has been specified, if not, skip this entire section since there is nowhere to copy the 503 file. | ||||
| if [ -z "$webroot" ]; then | ||||
|     # no webroot path provided | ||||
|     echo -e "${info}${stamp} -- [INFO] ${warn503} --${normal}" \ | ||||
|     echo -e "${info}[$(stamp)] -- [INFO] ${warn503} --${normal}" \ | ||||
|         >> "$logFile" | ||||
|     exitWarn+=("${stamp}_5031") | ||||
|     exitWarn+=("[$(stamp)]_5031") | ||||
|     clean503=0 | ||||
| else | ||||
|     # verify webroot actually exists | ||||
| @ -461,41 +465,41 @@ else | ||||
|     checkResult="$?" | ||||
|     if [ "$checkResult" = "1" ]; then | ||||
|         # webroot directory specified could not be found | ||||
|         echo -e "${info}${stamp} -- [INFO] ${warn503} --${normal}" \ | ||||
|         echo -e "${info}[$(stamp)] -- [INFO] ${warn503} --${normal}" \ | ||||
|             >> "$logFile" | ||||
|         exitWarn+=("{$stamp}_5032") | ||||
|         clean503=0 | ||||
|     else | ||||
|         # webroot exists | ||||
|         echo -e "${op}${stamp} Using webroot: ${lit}${webroot}${normal}" \ | ||||
|         echo -e "${op}[$(stamp)] Using webroot: ${lit}${webroot}${normal}" \ | ||||
|             >> "$logFile" | ||||
|         # Verify 503 file existance at given path | ||||
|         checkExist ff "$err503Path" | ||||
|         checkResult="$?" | ||||
|         if [ "$checkResult" = "1" ]; then | ||||
|             # 503 file could not be found | ||||
|             echo -e "${info}${stamp} -- [INFO] ${warn503} --${normal}" \ | ||||
|             echo -e "${info}[$(stamp)] -- [INFO] ${warn503} --${normal}" \ | ||||
|                 >> "$logFile" | ||||
|             exitWarn+=("${stamp}_5033") | ||||
|             exitWarn+=("[$(stamp)]_5033") | ||||
|             clean503=0 | ||||
|         else | ||||
|             # 503 file exists and webroot is valid. Let's copy it! | ||||
|             echo -e "${op}${stamp} ${err503File} found at ${lit}${err503Path}" \ | ||||
|             echo -e "${op}[$(stamp)] ${err503File} found at ${lit}${err503Path}" \ | ||||
|                 "${normal}" >> "$logFile" | ||||
|             echo -e "${op}${stamp} Copying 503 error page to webroot..." \ | ||||
|             echo -e "${op}[$(stamp)] Copying 503 error page to webroot..." \ | ||||
|                 "${normal}" >> "$logFile" | ||||
|             cp "${err503Path}" "$webroot/" >> "$logFile" 2>&1 | ||||
|             copyResult="$?" | ||||
|             # verify copy was successful | ||||
|                 if [ "$copyResult" = "1" ]; then | ||||
|                     # copy was unsuccessful | ||||
|                     echo -e "${info}${stamp} -- [INFO] ${warn503} --${normal}" \ | ||||
|                     echo -e "${info}[$(stamp)] -- [INFO] ${warn503} --${normal}" \ | ||||
|                         >> "$logFile" | ||||
|                     exitWarn+=("${stamp}_5035") | ||||
|                     exitWarn+=("[$(stamp)]_5035") | ||||
|                     clean503=0 | ||||
|                 else | ||||
|                 # copy was successful | ||||
|                 echo -e "${info}${stamp} -- [INFO] 503 error page" \ | ||||
|                 echo -e "${info}[$(stamp)] -- [INFO] 503 error page" \ | ||||
|                     "successfully copied to webroot --${normal}" >> "$logFile" | ||||
|                 clean503=1 | ||||
|                 fi | ||||
| @ -510,10 +514,10 @@ fi | ||||
| ncMaint on | ||||
| # check if successful | ||||
| if [ "$maintResult" = "0" ]; then | ||||
|     echo -e "${info}${stamp} -- [INFO] NextCloud now in maintenance mode --" \ | ||||
|     echo -e "${info}[$(stamp)] -- [INFO] NextCloud now in maintenance mode --" \ | ||||
|         "${normal}" >> "$logFile" | ||||
| else | ||||
|     exitError+=("${stamp}_100") | ||||
|     exitError+=("[$(stamp)]_100") | ||||
|     cleanup | ||||
|     quit | ||||
| fi | ||||
| @ -524,23 +528,23 @@ mapfile -t sqlParams < "$sqlDetails" | ||||
| 
 | ||||
| 
 | ||||
| ### Dump SQL | ||||
| echo -e "${op}${stamp} Dumping NextCloud SQL database...${normal}" >> "$logFile" | ||||
| echo -e "${op}[$(stamp)] Dumping NextCloud SQL database...${normal}" >> "$logFile" | ||||
| mysqldump --single-transaction -h"${sqlParams[0]}" -u"${sqlParams[1]}" \ | ||||
|     -p"${sqlParams[2]}" "${sqlParams[3]}" > "${sqlDumpDir}/${sqlDumpFile}" \ | ||||
|     2>> "$logFile" | ||||
| # verify | ||||
| dumpResult="$?" | ||||
| if [ "$dumpResult" = "0" ]; then | ||||
|     echo -e "${ok}${stamp} -- [SUCCESS] SQL dumped successfully --${normal}" \ | ||||
|     echo -e "${ok}[$(stamp)] -- [SUCCESS] SQL dumped successfully --${normal}" \ | ||||
|         >> "$logFile" | ||||
| else | ||||
|     exitError+=("${stamp}_200") | ||||
|     exitError+=("[$(stamp)]_200") | ||||
|     cleanup | ||||
|     quit | ||||
| fi | ||||
| 
 | ||||
| ### Call borgbackup to copy actual files | ||||
| echo -e "${op}${stamp} Pre-backup tasks completed, calling borgbackup..." \ | ||||
| echo -e "${op}[$(stamp)] Pre-backup tasks completed, calling borgbackup..." \ | ||||
|     "${normal}" >> "$logFile" | ||||
| 
 | ||||
| ## Get borgbackup settings and repo details | ||||
| @ -549,10 +553,10 @@ mapfile -t borgConfig < "$borgDetails" | ||||
| ## check if any required borg configuration variables in defintion file are | ||||
| ## empty and exit with error, otherwise, map array items to variables | ||||
| # check: borg base directory | ||||
| echo -e "${op}${stamp} Verifying supplied borg configuration variables..." \ | ||||
| echo -e "${op}[$(stamp)] Verifying supplied borg configuration variables..." \ | ||||
|     "${normal}" >> "$logFile" | ||||
| if [ -z "${borgConfig[0]}" ]; then | ||||
|     exitError+=("${stamp}_210") | ||||
|     exitError+=("[$(stamp)]_210") | ||||
|     cleanup | ||||
|     quit | ||||
| else | ||||
| @ -561,16 +565,16 @@ else | ||||
|     checkResult="$?" | ||||
|     if [ "$checkResult" = "1" ]; then | ||||
|         # borg base directory specified could not be found | ||||
|         exitError+=("${stamp}_210") | ||||
|         exitError+=("[$(stamp)]_210") | ||||
|         cleanup | ||||
|         quit | ||||
|     fi | ||||
|     echo -e "${op}${stamp} Borg base dir... OK${normal}" >> "$logFile" | ||||
|     echo -e "${op}[$(stamp)] Borg base dir... OK${normal}" >> "$logFile" | ||||
|     export BORG_BASE_DIR="${borgConfig[0]%/}" | ||||
| fi | ||||
| # check: path to SSH keyfile | ||||
| if [ -z "${borgConfig[1]}" ]; then | ||||
|     exitError+=("${stamp}_211") | ||||
|     exitError+=("[$(stamp)]_211") | ||||
|     cleanup | ||||
|     quit | ||||
| else | ||||
| @ -578,28 +582,28 @@ else | ||||
|     checkResult="$?" | ||||
|     if [ "$checkResult" = 1 ]; then | ||||
|         # SSH keyfile specified could not be found | ||||
|         exitError+=("${stamp}_211") | ||||
|         exitError+=("[$(stamp)]_211") | ||||
|         cleanup | ||||
|         quit | ||||
|     fi | ||||
|     echo -e "${op}${stamp} Borg SSH key... OK${normal}" >> "$logFile" | ||||
|     echo -e "${op}[$(stamp)] Borg SSH key... OK${normal}" >> "$logFile" | ||||
|     export BORG_RSH="ssh -i ${borgConfig[1]}" | ||||
| fi | ||||
| # check: name of borg repo | ||||
| if [ -z "${borgConfig[2]}" ]; then | ||||
|     exitError+=("${stamp}_212") | ||||
|     exitError+=("[$(stamp)]_212") | ||||
|     cleanup | ||||
|     quit | ||||
| else | ||||
|     echo -e "${op}${stamp} Borg REPO name... OK${normal}" >> "$logFile" | ||||
|     echo -e "${op}[$(stamp)] Borg REPO name... OK${normal}" >> "$logFile" | ||||
|     export BORG_REPO="${borgConfig[2]}" | ||||
| fi | ||||
| # repo password | ||||
| if [ -n "${borgConfig[3]}" ]; then | ||||
|     echo -e "${op}${stamp} Borg SSH/REPO password... OK${normal}" >> "$logFile" | ||||
|     echo -e "${op}[$(stamp)] Borg SSH/REPO password... OK${normal}" >> "$logFile" | ||||
|     export BORG_PASSPHRASE="${borgConfig[3]}" | ||||
| else | ||||
|     exitWarn+=("${stamp}_2111") | ||||
|     exitWarn+=("[$(stamp)]_2111") | ||||
|     # if the password was omitted by mistake, export a dummy password so borg | ||||
|     # fails with an error instead of sitting and waiting for input | ||||
|     export BORG_PASSPHRASE="DummyPasswordSoBorgFails" | ||||
| @ -612,31 +616,31 @@ borgExclude="${borgConfig[5]}" | ||||
| borgPrune="${borgConfig[6]}" | ||||
| # export: borg remote path (if not blank) | ||||
| if [ -n "${borgConfig[7]}" ]; then | ||||
|     echo -e "${op}${stamp} Borg REMOTE path... OK${normal}" >> "$logFile" | ||||
|     echo -e "${op}[$(stamp)] Borg REMOTE path... OK${normal}" >> "$logFile" | ||||
|     export BORG_REMOTE_PATH="${borgConfig[7]}" | ||||
| else | ||||
|     exitWarn+=("${stamp}_2112") | ||||
|     exitWarn+=("[$(stamp)]_2112") | ||||
| fi | ||||
| 
 | ||||
| ## If borgXtra exists, map contents to an array variable | ||||
| if [ -n "$borgXtra" ]; then | ||||
|     echo -e "${op}${stamp} Processing referenced extra files list for" \ | ||||
|     echo -e "${op}[$(stamp)] Processing referenced extra files list for" \ | ||||
|         "borgbackup to include in backup${normal}" >> "$logFile" | ||||
|     checkExist ff "$borgXtra" | ||||
|     checkResult="$?" | ||||
|     if [ "$checkResult" = "0" ]; then | ||||
|         echo -e "${op}${stamp} Found ${lit}${borgXtra}${normal}" >> "$logFile" | ||||
|         echo -e "${op}[$(stamp)] Found ${lit}${borgXtra}${normal}" >> "$logFile" | ||||
|         mapfile -t xtraFiles < "$borgXtra" | ||||
|         echo -e "${op}${stamp} Processed extra files list for inclusion in" \ | ||||
|         echo -e "${op}[$(stamp)] Processed extra files list for inclusion in" \ | ||||
|             "borgbackup${normal}" >> "$logFile" | ||||
|     else | ||||
|         exitWarn+=("${stamp}_2113") | ||||
|         exitWarn+=("[$(stamp)]_2113") | ||||
|     fi | ||||
| else | ||||
|     # no extra locations specified | ||||
|     echo -e "${op}${stamp} No additional locations specified for backup." \ | ||||
|     echo -e "${op}[$(stamp)] No additional locations specified for backup." \ | ||||
|         "Only NextCloud data files will be backed up${normal}" >> "$logFile" | ||||
|     exitWarn+=("${stamp}_2116") | ||||
|     exitWarn+=("[$(stamp)]_2116") | ||||
| fi | ||||
| 
 | ||||
| ## Check if borgExclude exists since borg will throw an error if it's missing | ||||
| @ -644,16 +648,16 @@ if [ -n "$borgExclude" ]; then | ||||
|     checkExist ff "$borgExclude" | ||||
|     checkResult="$?" | ||||
|     if [ "$checkResult" = "0" ]; then | ||||
|             echo -e "${op}${stamp} Found ${lit}${borgExclude}${normal}" \ | ||||
|             echo -e "${op}[$(stamp)] Found ${lit}${borgExclude}${normal}" \ | ||||
|                 >> "$logFile" | ||||
|     else | ||||
|         # file not found, unset the variable so it's like it was not specified | ||||
|         # in the first place and continue with backup | ||||
|         unset borgExclude | ||||
|         exitWarn+=("${stamp}_2114") | ||||
|         exitWarn+=("[$(stamp)]_2114") | ||||
|     fi | ||||
| else | ||||
|     echo -e "${op}${stamp} Exclusion pattern file not specified." \ | ||||
|     echo -e "${op}[$(stamp)] Exclusion pattern file not specified." \ | ||||
|         "No exclusions will be processed${normal}" >> "$logFile" | ||||
| fi | ||||
| 
 | ||||
| @ -664,13 +668,13 @@ fi | ||||
| ## the 'noexec' option for security.  Thus, we will use/create a 'tmp' folder | ||||
| ## within the BORG_BASE_DIR and instruct python to use that instead of /tmp | ||||
| # check if BORG_BASE_DIR/tmp exists, if not, create it | ||||
| echo -e "${op}${stamp} Checking for tmp directory at ${lit}${BORG_BASE_DIR}" \ | ||||
| echo -e "${op}[$(stamp)] Checking for tmp directory at ${lit}${BORG_BASE_DIR}" \ | ||||
|     "${normal}" >> "$logFile" | ||||
| checkExist fd "$BORG_BASE_DIR/tmp" | ||||
| checkResult="$?" | ||||
| if [ "$checkResult" = "1" ]; then | ||||
|     # folder not found | ||||
|     echo -e "${op}${stamp} tmp folder not found... creating${lit}" \ | ||||
|     echo -e "${op}[$(stamp)] tmp folder not found... creating${lit}" \ | ||||
|         "${BORG_BASE_DIR}/tmp${normal}" >> "$logFile" | ||||
|     mkdir "$BORG_BASE_DIR/tmp" 2>> "$logFile" | ||||
|     # verify folder created | ||||
| @ -678,17 +682,17 @@ if [ "$checkResult" = "1" ]; then | ||||
|     checkResult="$?" | ||||
|     if [ "$checkResult" = "0" ]; then | ||||
|         # folder exists | ||||
|         echo -e "${op}${stamp} tmp folder created within borg base directory" \ | ||||
|         echo -e "${op}[$(stamp)] tmp folder created within borg base directory" \ | ||||
|             "${normal}" >> "$logFile" | ||||
|     else | ||||
|         # problem creating folder and script will exit | ||||
|         exitError+=("${stamp}_215") | ||||
|         exitError+=("[$(stamp)]_215") | ||||
|         cleanup | ||||
|         quit | ||||
|     fi | ||||
| else | ||||
|     # folder found | ||||
|     echo -e "${op}${stamp} tmp folder found within borg base directory" \ | ||||
|     echo -e "${op}[$(stamp)] tmp folder found within borg base directory" \ | ||||
|         "${normal}" >> "$logFile" | ||||
| fi | ||||
| # export TMPDIR environment variable | ||||
| @ -699,7 +703,7 @@ export TMPDIR="${BORG_BASE_DIR}/tmp" | ||||
| # commandline depends on whether borgExclude is empty or not | ||||
| if [ -z "$borgExclude" ]; then | ||||
|     # borgExclude is empty | ||||
|     echo -e "${info}${stamp} --[INFO] Executing borg without exclusions --" \ | ||||
|     echo -e "${info}[$(stamp)] --[INFO] Executing borg without exclusions --" \ | ||||
|         "${normal}" >> "$logFile" | ||||
|     borg --show-rc create ${borgCreateParams} ::`date +%Y-%m-%d_%H%M%S` \ | ||||
|         ${xtraFiles[@]} \ | ||||
| @ -707,7 +711,7 @@ if [ -z "$borgExclude" ]; then | ||||
|         2>> "$logFile" | ||||
| else | ||||
|     # borgExclude is not empty | ||||
|     echo -e "${info}${stamp} --[INFO] Executing borg with exclusions --" \ | ||||
|     echo -e "${info}[$(stamp)] --[INFO] Executing borg with exclusions --" \ | ||||
|         "${normal}" >> "$logFile" | ||||
|     borg --show-rc create ${borgCreateParams} --exclude-from ${borgExclude} \ | ||||
|         ::`date +%Y-%m-%d_%H%M%S` \ | ||||
| @ -719,54 +723,54 @@ fi | ||||
| ## Check status of borg operation | ||||
| borgResult="$?" | ||||
| if [ "$borgResult" -eq 0 ]; then | ||||
|     echo -e "${ok}${stamp} -- [SUCCESS] Borg backup completed successfully --" \ | ||||
|     echo -e "${ok}[$(stamp)] -- [SUCCESS] Borg backup completed successfully --" \ | ||||
|         "${normal}" >> "$logFile" | ||||
| elif [ "$borgResult" -eq 1 ]; then | ||||
|     exitWarn+=("${stamp}_2200") | ||||
|     exitWarn+=("[$(stamp)]_2200") | ||||
| elif [ "$borgResult" -ge 2 ]; then | ||||
|     exitError+=("${stamp}_220") | ||||
|     exitError+=("[$(stamp)]_220") | ||||
|     cleanup | ||||
|     quit | ||||
| else | ||||
|     exitWarn+=("${stamp}_2201") | ||||
|     exitWarn+=("[$(stamp)]_2201") | ||||
| fi | ||||
| 
 | ||||
| ## Generate and execute borg prune | ||||
| # command depends on whether or not parameters have been defined | ||||
| if [ -n "$borgPrune" ]; then | ||||
|     # parameters defined | ||||
|     echo -e "${info}${stamp} --[INFO] Executing borg prune operation --" \ | ||||
|     echo -e "${info}[$(stamp)] --[INFO] Executing borg prune operation --" \ | ||||
|         "${normal}" >> "$logFile" | ||||
|     borg prune --show-rc -v ${borgPruneParams} ${borgPrune} \ | ||||
|         2>> "$logFile" | ||||
|     # check return-status | ||||
|     pruneResult="$?" | ||||
|     if [ "$pruneResult" -eq 0 ]; then | ||||
|         echo -e "${ok}${stamp} -- [SUCCESS] Borg prune completed successfully" \ | ||||
|         echo -e "${ok}[$(stamp)] -- [SUCCESS] Borg prune completed successfully" \ | ||||
|             "--${normal}" >> "$logFile" | ||||
|     elif [ "$pruneResult" -eq 1 ]; then | ||||
|         exitWarn+=("${stamp}_2210") | ||||
|         exitWarn+=("[$(stamp)]_2210") | ||||
|     elif [ "$pruneResult" -ge 2 ]; then | ||||
|         exitError+=("${stamp}_221") | ||||
|         exitError+=("[$(stamp)]_221") | ||||
|     else | ||||
|         exitWarn+=("${stamp}_2212") | ||||
|         exitWarn+=("[$(stamp)]_2212") | ||||
|     fi | ||||
| else | ||||
|     # parameters not defined... skip pruning | ||||
|     exitWarn+=("${stamp}_2115") | ||||
|     exitWarn+=("[$(stamp)]_2115") | ||||
| fi | ||||
| 
 | ||||
| 
 | ||||
| ### borgbackup completed | ||||
| echo -e "${op}${stamp} Borgbackup completed... begin cleanup" \ | ||||
| echo -e "${op}[$(stamp)] Borgbackup completed... begin cleanup" \ | ||||
|     "${normal}" >> "$logFile" | ||||
| 
 | ||||
| 
 | ||||
| ### Exit script | ||||
| echo -e "${bold}${op}${stamp} ***Normal exit process***${normal}" \ | ||||
| echo -e "${bold}${op}[$(stamp)] ***Normal exit process***${normal}" \ | ||||
|     >> "$logFile" | ||||
| cleanup | ||||
| echo -e "${bold}${ok}${stamp} -- [SUCCESS] All processes completed" \ | ||||
| echo -e "${bold}${ok}[$(stamp)] -- [SUCCESS] All processes completed" \ | ||||
|     "successfully --${normal}" >> "$logFile" | ||||
| quit | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user