[cmd_fsck] Now permits choice in what tests one does

This commit is contained in:
ayakael 2018-04-15 22:05:35 -04:00
parent 88c6e17d52
commit ff71d6530d
No known key found for this signature in database
GPG key ID: 575626A4AE5F4026

View file

@ -12,13 +12,29 @@
cmd_fsck() {
local GIT_DIR="${1}"
local TARGET="${2}"
local TARGET="${2}"; shift 2
local cmdList=(${@})
local DB_FILE="${TARGET}/${_OPT_DB_FILE}"
[[ ! -f "${DB_FILE}" ]] && return 3
[[ ! -d "${GIT_DIR}/.git" ]] && return 2
chk_deployed_ids "${TARGET}" "${DB_FILE}"
chk_nonexistent_ids "${TARGET}" "${DB_FILE}"
chk_metadata "${GIT_DIR}" "${TARGET}" "${DB_FILE}"
case ${cmdList[@]} in
--deployed-ids)
chk_deployed_ids "${TARGET}" "${DB_FILE}"
;;
--non-existent-ids)
chk_nonexistent_ids "${TARGET}" "${DB_FILE}"
;;
--metadata)
chk_metadata "${GIT_DIR}" "${TARGET}" "${DB_FILE}"
;;
*)
chk_deployed_ids "${TARGET}" "${DB_FILE}"
chk_nonexistent_ids "${TARGET}" "${DB_FILE}"
chk_metadata "${GIT_DIR}" "${TARGET}" "${DB_FILE}"
;;
esac
}