@@ -134,10 +134,10 @@ backup_couch() {
134
134
print_notice "Dumping CouchDB database: '${DB_NAME}' ${compression_string}"
135
135
curl -sSL -X GET ${DB_HOST}:${DB_PORT}/${DB_NAME}/_all_docs?include_docs=true ${compress_cmd} | $compress_cmd > "${TEMP_LOCATION}"/"${target}"
136
136
exit_code=$?
137
- check_exit_code $target
137
+ check_exit_code backup $target
138
138
generate_checksum
139
139
move_dbbackup
140
- check_exit_code " move backup file"
140
+ check_exit_code move $target
141
141
post_dbbackup ${DB_NAME}
142
142
}
143
143
@@ -161,14 +161,14 @@ backup_influx() {
161
161
print_notice "Dumping Influx database: '${db}'"
162
162
influxd backup ${influx_compression} ${bucket} -portable -host ${DB_HOST}:${DB_PORT} ${EXTRA_OPTS} "${TEMP_LOCATION}"/"${target_dir}"
163
163
exit_code=$?
164
- check_exit_code $target_dir
164
+ check_exit_code backup $target_dir
165
165
print_notice "Creating archive file of '${target_dir}' with tar ${compression_string}"
166
166
tar cf - "${TEMP_LOCATION}"/"${target_dir}" | $dir_compress_cmd > "${TEMP_LOCATION}"/"${target_dir}".tar"${extension}"
167
167
target=influx_${db}_${DB_HOST#*//}_${now}.tar${extension}
168
168
ltarget=influx_${db}_${DB_HOST#*//}
169
169
generate_checksum
170
170
move_dbbackup
171
- check_exit_code " move backup file"
171
+ check_exit_code move $target_dir
172
172
post_dbbackup $db
173
173
done
174
174
;;
@@ -183,13 +183,13 @@ backup_influx() {
183
183
print_notice "Dumping Influx2 database: '${db}'"
184
184
influx backup --org ${DB_USER} ${bucket} --host ${DB_HOST}:${DB_PORT} --token ${DB_PASS} ${EXTRA_OPTS} --compression none "${TEMP_LOCATION}"/"${target_dir}"
185
185
exit_code=$?
186
- check_exit_code $target_dir
186
+ check_exit_code backup $target_dir
187
187
create_archive
188
188
target=influx2_${db}_${DB_HOST#*//}_${now}.tar${extension}
189
189
ltarget=influx2_${db}_${DB_HOST#*//}
190
190
generate_checksum
191
191
move_dbbackup
192
- check_exit_code " move backup file"
192
+ check_exit_code move $target_dir
193
193
post_dbbackup $db
194
194
done
195
195
;;
@@ -219,7 +219,7 @@ backup_mongo() {
219
219
check_exit_code $target
220
220
generate_checksum
221
221
move_dbbackup
222
- check_exit_code " move backup file"
222
+ check_exit_code move $target
223
223
post_dbbackup "${DB_NAME}"
224
224
}
225
225
@@ -232,10 +232,10 @@ backup_mssql() {
232
232
print_notice "Dumping MSSQL database: '${DB_NAME}'"
233
233
silent /opt/mssql-tools18/bin/sqlcmd -C -S ${DB_HOST}\,${DB_PORT} -U ${DB_USER} -P ${DB_PASS} -Q "BACKUP DATABASE [${DB_NAME}] TO DISK = N'${TEMP_LOCATION}/${target}' WITH NOFORMAT, NOINIT, NAME = '${DB_NAME}-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
234
234
exit_code=$?
235
- check_exit_code $target
235
+ check_exit_code backup $target
236
236
generate_checksum
237
237
move_dbbackup
238
- check_exit_code " move backup file"
238
+ check_exit_code move $target
239
239
post_dbbackup $DB_NAME
240
240
}
241
241
@@ -273,10 +273,10 @@ backup_mysql() {
273
273
print_notice "Dumping MySQL/MariaDB database: '${db}' ${compression_string}"
274
274
mysqldump --max-allowed-packet=${MYSQL_MAX_ALLOWED_PACKET} -h ${DB_HOST} -P ${DB_PORT} -u${DB_USER} ${single_transaction} ${stored_procedures} ${mysql_tls_args} ${EXTRA_OPTS} --databases $db | $compress_cmd > "${TEMP_LOCATION}"/"${target}"
275
275
exit_code=$?
276
- check_exit_code $target
276
+ check_exit_code backup $target
277
277
generate_checksum
278
278
move_dbbackup
279
- check_exit_code " move backup file"
279
+ check_exit_code move $target
280
280
post_dbbackup $db
281
281
done
282
282
else
@@ -292,7 +292,7 @@ backup_mysql() {
292
292
check_exit_code $target
293
293
generate_checksum
294
294
move_dbbackup
295
- check_exit_code " move backup file"
295
+ check_exit_code move $target
296
296
post_dbbackup all
297
297
fi
298
298
}
@@ -326,10 +326,10 @@ backup_pgsql() {
326
326
print_notice "Dumping PostgresSQL database: '${db}' ${compression_string}"
327
327
pg_dump -h ${DB_HOST} -p ${DB_PORT} -U ${DB_USER} $db ${EXTRA_OPTS} | $compress_cmd > ${TEMP_LOCATION}/${target}
328
328
exit_code=$?
329
- check_exit_code $target
329
+ check_exit_code backup $target
330
330
generate_checksum
331
331
move_dbbackup
332
- check_exit_code " move backup file"
332
+ check_exit_code move $target
333
333
post_dbbackup $db
334
334
done
335
335
else
@@ -350,10 +350,10 @@ backup_pgsql() {
350
350
done
351
351
pg_dumpall -h ${DB_HOST} -U ${DB_USER} -p ${DB_PORT} ${pgexclude_arg} ${EXTRA_OPTS} | $compress_cmd > ${TEMP_LOCATION}/${target}
352
352
exit_code=$?
353
- check_exit_code $target
353
+ check_exit_code backup $target
354
354
generate_checksum
355
355
move_dbbackup
356
- check_exit_code " move backup file"
356
+ check_exit_code move $target
357
357
post_dbbackup all
358
358
fi
359
359
}
@@ -382,10 +382,10 @@ backup_redis() {
382
382
compression
383
383
pre_dbbackup all
384
384
$compress_cmd "${TEMP_LOCATION}/${target_original}"
385
- check_exit_code $target
385
+ check_exit_code backup $target
386
386
generate_checksum
387
387
move_dbbackup
388
- check_exit_code " move backup file"
388
+ check_exit_code move $target
389
389
post_dbbackup all
390
390
}
391
391
@@ -400,11 +400,11 @@ backup_sqlite3() {
400
400
print_notice "Dumping sqlite3 database: '${DB_HOST}' ${compression_string}"
401
401
silent sqlite3 "${DB_HOST}" ".backup '${TEMP_LOCATION}/backup.sqlite3'"
402
402
exit_code=$?
403
- check_exit_code $target
403
+ check_exit_code backup $target
404
404
cat "${TEMP_LOCATION}"/backup.sqlite3 | ${dir_compress_cmd} > "${TEMP_LOCATION}/${target}"
405
405
generate_checksum
406
406
move_dbbackup
407
- check_exit_code " move backup file"
407
+ check_exit_code move $target
408
408
post_dbbackup $db
409
409
}
410
410
@@ -513,6 +513,32 @@ check_availability() {
513
513
514
514
check_exit_code() {
515
515
print_debug "DB Backup Exit Code is ${exit_code}"
516
+ case "${1}" in
517
+ backup )
518
+ case "${exit_code}" in
519
+ 0 )
520
+ print_info "DB Backup of '${2}' completed successfully"
521
+ ;;
522
+ * )
523
+ print_error "DB Backup of '${2}' reported errors"
524
+ master_exit_code=1
525
+ ;;
526
+ esac
527
+ ;;
528
+ move )
529
+ case "${move_exit_code}" in
530
+ 0 )
531
+ print_debug "Moving of backup '${2}' completed successfully"
532
+ ;;
533
+ * )
534
+ print_error "Moving of backup '${1}' reported errors"
535
+ master_exit_code=1
536
+ ;;
537
+ esac
538
+ ;;
539
+ esac
540
+
541
+
516
542
case "${exit_code}" in
517
543
0 )
518
544
print_info "DB Backup of '${1}' completed successfully"
@@ -694,6 +720,7 @@ move_dbbackup() {
694
720
mkdir -p "${DB_DUMP_TARGET}"
695
721
mv "${TEMP_LOCATION}"/*."${checksum_extension}" "${DB_DUMP_TARGET}"/
696
722
mv "${TEMP_LOCATION}"/"${target}" "${DB_DUMP_TARGET}"/"${target}"
723
+ move_exit_code=$?
697
724
if var_true "${CREATE_LATEST_SYMLINK}" ; then
698
725
ln -sf "${DB_DUMP_TARGET}"/"${target}" "${DB_DUMP_TARGET}"/latest-"${ltarget}"
699
726
fi
@@ -723,7 +750,7 @@ move_dbbackup() {
723
750
[[ ( -n "${S3_HOST}" ) ]] && PARAM_AWS_ENDPOINT_URL=" --endpoint-url ${S3_PROTOCOL}://${S3_HOST}"
724
751
725
752
silent aws ${PARAM_AWS_ENDPOINT_URL} s3 cp ${TEMP_LOCATION}/${target} s3://${S3_BUCKET}/${S3_PATH}/${target} ${s3_ssl} ${s3_ca_cert} ${S3_EXTRA_OPTS}
726
- exit_code =$?
753
+ move_exit_code =$?
727
754
if var_true "${ENABLE_CHECKSUM}" ; then
728
755
silent aws ${PARAM_AWS_ENDPOINT_URL} s3 cp ${TEMP_LOCATION}/*.${checksum_extension} s3://${S3_BUCKET}/${S3_PATH}/ ${s3_ssl} ${s3_ca_cert} ${S3_EXTRA_OPTS}
729
756
fi
@@ -739,7 +766,7 @@ move_dbbackup() {
739
766
mv "${TEMP_LOCATION}"/"${target}" "${DB_DUMP_TARGET}"/"${target}"
740
767
741
768
silent blobxfer upload --mode file --remote-path ${BLOBXFER_REMOTE_PATH} --local-path ${DB_DUMP_TARGET}
742
- exit_code =$?
769
+ move_exit_code =$?
743
770
744
771
rm -rf "${TEMP_LOCATION}"/*."${checksum_extension}"
745
772
rm -rf "${TEMP_LOCATION}"/"${target}"
@@ -816,11 +843,11 @@ post_dbbackup() {
816
843
### Post Script Support
817
844
if [ -n "${POST_SCRIPT}" ] ; then
818
845
if var_true "${POST_SCRIPT_SKIP_X_VERIFY}" ; then
819
- eval "${POST_SCRIPT}" "${exit_code}" "${dbtype}" "${DB_HOST}" "${1}" "${dbbackup_start_time}" "${dbbackup_finish_time}" "${dbbackup_total_time}" "${target}" "${filesize}" "${checksum_value}"
846
+ eval "${POST_SCRIPT}" "${exit_code}" "${dbtype}" "${DB_HOST}" "${1}" "${dbbackup_start_time}" "${dbbackup_finish_time}" "${dbbackup_total_time}" "${target}" "${filesize}" "${checksum_value}" "${move_exit_code}"
820
847
else
821
848
if [ -x "${POST_SCRIPT}" ] ; then
822
849
print_notice "Found POST_SCRIPT environment variable. Executing '${POST_SCRIPT}"
823
- eval "${POST_SCRIPT}" "${exit_code}" "${dbtype}" "${DB_HOST}" "${1}" "${dbbackup_start_time}" "${dbbackup_finish_time}" "${dbbackup_total_time}" "${target}" "${filesize}" "${checksum_value}"
850
+ eval "${POST_SCRIPT}" "${exit_code}" "${dbtype}" "${DB_HOST}" "${1}" "${dbbackup_start_time}" "${dbbackup_finish_time}" "${dbbackup_total_time}" "${target}" "${filesize}" "${checksum_value}" "${move_exit_code}"
824
851
else
825
852
print_error "Can't execute POST_SCRIPT environment variable '${POST_SCRIPT}' as its filesystem bit is not executible!"
826
853
fi
@@ -837,12 +864,12 @@ post_dbbackup() {
837
864
if [ -d "${SCRIPT_LOCATION_POST}" ] && dir_notempty "${SCRIPT_LOCATION_POST}" ; then
838
865
for f in $(find ${SCRIPT_LOCATION_POST} -name \*.sh -type f); do
839
866
if var_true "${POST_SCRIPT_SKIP_X_VERIFY}" ; then
840
- ${f} "${exit_code}" "${dbtype}" "${DB_HOST}" "${1}" "${dbbackup_start_time}" "${dbbackup_finish_time}" "${dbbackup_total_time}" "${target}" "${filesize}" "${checksum_value}"
867
+ ${f} "${exit_code}" "${dbtype}" "${DB_HOST}" "${1}" "${dbbackup_start_time}" "${dbbackup_finish_time}" "${dbbackup_total_time}" "${target}" "${filesize}" "${checksum_value}" "${move_exit_code}"
841
868
else
842
869
if [ -x "${f}" ] ; then
843
870
print_notice "Executing post backup custom script : '${f}'"
844
871
## script EXIT_CODE DB_TYPE DB_HOST DB_NAME STARTEPOCH FINISHEPOCH DURATIONEPOCH BACKUP_FILENAME FILESIZE CHECKSUMVALUE
845
- ${f} "${exit_code}" "${dbtype}" "${DB_HOST}" "${1}" "${dbbackup_start_time}" "${dbbackup_finish_time}" "${dbbackup_total_time}" "${target}" "${filesize}" "${checksum_value}"
872
+ ${f} "${exit_code}" "${dbtype}" "${DB_HOST}" "${1}" "${dbbackup_start_time}" "${dbbackup_finish_time}" "${dbbackup_total_time}" "${target}" "${filesize}" "${checksum_value}" "${move_exit_code}"
846
873
else
847
874
print_error "Can't run post backup custom script: '${f}' as its filesystem bit is not executible!"
848
875
fi
0 commit comments