Skip to content

Commit 80e407d

Browse files
committed
switch globals to only get backed up if using all
1 parent 40ad7ab commit 80e407d

File tree

1 file changed

+33
-15
lines changed

1 file changed

+33
-15
lines changed

install/assets/functions/10-db-backup

Lines changed: 33 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -588,6 +588,23 @@ backup_mysql() {
588588
}
589589

590590
backup_pgsql() {
591+
backup_pgsql_globals() {
592+
prepare_dbbackup
593+
backup_job_filename=pgsql_globals_${backup_job_db_host,,}_${now}.sql
594+
compression
595+
pre_dbbackup "globals"
596+
print_notice "Dumping PostgresSQL globals: with 'pg_dumpall -g' ${compression_string}"
597+
run_as_user ${play_fair} pg_dumpall -h "${backup_job_db_host}" -U "${backup_job_db_user}" -p "${backup_job_db_port}" -g ${backup_job_extra_opts} ${backup_job_extra_dump_opts} | ${compress_cmd} | run_as_user tee "${TEMP_PATH}"/"${backup_job_filename}" > /dev/null
598+
exit_code=$?
599+
check_exit_code "${backup_job_filename}"
600+
timer backup finish
601+
file_encryption
602+
generate_checksum
603+
move_dbbackup
604+
check_exit_code move "${backup_job_filename}"
605+
post_dbbackup "globals"
606+
}
607+
591608
export PGPASSWORD=${backup_job_db_pass}
592609
if [ -n "${backup_job_db_auth}" ] ; then
593610
authdb=${backup_job_db_auth}
@@ -603,9 +620,11 @@ backup_pgsql() {
603620
write_log debug "Excluding '${db_exclude}' from ALL DB_NAME backups"
604621
db_names=$(echo "$db_names" | sed "/${db_exclude}/d" )
605622
done
623+
_postgres_backup_globals=true
606624
fi
607625
else
608626
db_names=$(echo "${backup_job_db_name}" | tr ',' '\n')
627+
_postgres_backup_globals=false
609628
fi
610629

611630
write_log debug "Databases Found: $(echo ${db_names} | xargs | tr ' ' ',')"
@@ -628,20 +647,7 @@ backup_pgsql() {
628647
check_exit_code move "${backup_job_filename}"
629648
post_dbbackup "${db}"
630649
done
631-
prepare_dbbackup
632-
backup_job_filename=pgsql_globals_${backup_job_db_host,,}_${now}.sql
633-
compression
634-
pre_dbbackup "globals"
635-
print_notice "Dumping PostgresSQL globals: with 'pg_dumpall -g' ${compression_string}"
636-
run_as_user ${play_fair} pg_dumpall -h "${backup_job_db_host}" -U "${backup_job_db_user}" -p "${backup_job_db_port}" -g ${backup_job_extra_opts} ${backup_job_extra_dump_opts} | ${compress_cmd} | run_as_user tee "${TEMP_PATH}"/"${backup_job_filename}" > /dev/null
637-
exit_code=$?
638-
check_exit_code "${backup_job_filename}"
639-
timer backup finish
640-
file_encryption
641-
generate_checksum
642-
move_dbbackup
643-
check_exit_code move "${backup_job_filename}"
644-
post_dbbackup "globals"
650+
if var_true "${_postgres_backup_globals}" ; then backup_pgsql_globals; fi
645651
else
646652
write_log debug "Not splitting database dumps into their own files"
647653
prepare_dbbackup
@@ -667,6 +673,7 @@ backup_pgsql() {
667673
move_dbbackup
668674
check_exit_code move "${backup_job_filename}"
669675
post_dbbackup all
676+
if var_true "${_postgres_backup_globals}" ; then backup_pgsql_globals; fi
670677
fi
671678
}
672679

@@ -1407,7 +1414,7 @@ post_dbbackup() {
14071414
source /assets/defaults/03-monitoring
14081415
write_log notice "Sending Backup Statistics to Zabbix"
14091416
silent zabbix_sender -c -c "${ZABBIX_CONFIG_PATH}"/"${ZABBIX_CONFIG_FILE}" -k dbbackup.backup -o '[{"{#NAME}":"'${backup_job_db_host}.${backup_job_db_name}'"}]'
1410-
cat <<EOF | silent run_as_user zabbix_sender -c "${ZABBIX_CONFIG_PATH}"/"${ZABBIX_CONFIG_FILE}" -i -
1417+
cat <<EOF > /tmp/zabbix_output
14111418
- dbbackup.backup.size.[${backup_job_db_host}.${backup_job_db_name}] "${dbbackup_size}"
14121419
- dbbackup.backup.datetime.[${backup_job_db_host}.${backup_job_db_name}] "${dbbackup_date}"
14131420
- dbbackup.backup.status.[${backup_job_db_host}.${backup_job_db_name}] "${exit_code}"
@@ -1416,6 +1423,17 @@ post_dbbackup() {
14161423
${zabbix_encrypt_time}
14171424
${zabbix_checksum_time}
14181425
EOF
1426+
1427+
cat <<EOF | run_as_user zabbix_sender -c "${ZABBIX_CONFIG_PATH}"/"${ZABBIX_CONFIG_FILE}" -i -
1428+
- dbbackup.backup.size.[${backup_job_db_host}.${backup_job_db_name}] "${dbbackup_size}"
1429+
- dbbackup.backup.datetime.[${backup_job_db_host}.${backup_job_db_name}] "${dbbackup_date}"
1430+
- dbbackup.backup.status.[${backup_job_db_host}.${backup_job_db_name}] "${exit_code}"
1431+
- dbbackup.backup.duration.[${backup_job_db_host}.${backup_job_db_name}] "$((dbbackup_finish_time-dbbackup_start_time))"
1432+
- dbbackup.backup.filename.[${backup_job_db_host}.${backup_job_db_name}] "${backup_job_filename}"
1433+
${zabbix_encrypt_time}
1434+
${zabbix_checksum_time}
1435+
EOF
1436+
14191437
if [ "$?" != "0" ] ; then write_log error "Error sending statistics, consider disabling with 'CONTAINER_ENABLE_MONITORING=FALSE'" ; fi
14201438
fi
14211439

0 commit comments

Comments
 (0)