diff --git a/scripts/vaultwarden b/scripts/vaultwarden new file mode 100644 index 0000000..edf8be6 --- /dev/null +++ b/scripts/vaultwarden @@ -0,0 +1,29 @@ +#!/bin/bash + +restoreDir=/etc/restore +vaultwardenDir="$restoreDir/vaultwarden" + + +hook_check() { + if [[ -d "$vaultwardenDir" ]]; then + rm -rf "$vaultwardenDir" || exit 1 + fi +} + +hook_pre() { + backupDate=$(date +"%Y-%m-%d") + vaultwardenHome=$(getent passwd vaultwarden | cut -f6 -d:) + + mkdir -p "$vaultwardenDir" + sqlite3 "${vaultwardenHome}/data/db.sqlite3" ".backup '${vaultwardenDir}/db-${backupDate}.sqlite3'" +} + +hook_post() { + rm -rf "$vaultwardenDir" || exit 1 +} + +case "$1" in + before_check) hook_check;; + before_backup) hook_pre;; + after_backup) hook_post;; +esac