Remove empty error directories at exit

This commit is contained in:
Jérémy Lecour 2023-12-29 11:32:23 +01:00 committed by Jérémy Lecour
parent 3268ff0858
commit 430e4f52ac
Signed by: jlecour
SSH key fingerprint: SHA256:h+5LgHRKwN9lS0SsdVR5yZPeFlJE4Mt+8UtL4CcP8dY
3 changed files with 16 additions and 3 deletions

View file

@ -101,6 +101,7 @@ dump_mysql_variables() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_file}"
}
@ -174,6 +175,7 @@ dump_mysql_grants() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_file}"
else
@ -294,6 +296,7 @@ dump_mysql_global() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_file}"
@ -500,6 +503,7 @@ dump_mysql_tabs() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_dir}"
done
@ -626,6 +630,7 @@ dump_mysql_instance() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_file}"
}
@ -702,6 +707,7 @@ dump_postgresql_per_base() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_file}"
done
@ -739,6 +745,7 @@ dump_postgresql_filtered() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_file}"
}
@ -822,6 +829,7 @@ dump_redis() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
gzip "${dump_dir}/dump.rdb"
@ -833,6 +841,7 @@ dump_redis() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_dir}"
@ -940,6 +949,7 @@ dump_mongodb() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_dir}"
}
@ -969,6 +979,7 @@ dump_megacli_config() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_file}"
}
@ -1119,6 +1130,7 @@ dump_rabbitmq() {
GLOBAL_RC=${E_DUMPFAILED}
else
rm -f "${error_file}"
rmdir --ignore-fail-on-non-empty "${errors_dir}"
fi
log "LOCAL_TASKS - stop ${dump_file}"
}
@ -1570,4 +1582,4 @@ dump_elasticsearch_snapshot_multinode() {
fi
log "LOCAL_TASKS - stop dump_elasticsearch_snapshot_multinode"
}
}

View file

@ -401,7 +401,7 @@ setup() {
# Initialize a list of temporary files
declare -a TEMP_FILES=()
# Any file in this list will be deleted when the program exits
trap "clean_temp_files" EXIT
trap "cleanup" EXIT
}

View file

@ -37,9 +37,10 @@ add_to_temp_files() {
TEMP_FILES+=("${1}")
}
# Remove all temporary file created during the execution
clean_temp_files() {
cleanup() {
# shellcheck disable=SC2086
rm -f "${TEMP_FILES[@]}"
find "${ERRORS_DIR}" -type d -empty -delete
}
enforce_single_process() {
local pidfile=$1