diff options
-rwxr-xr-x | scripts/backup-aura-states | 26 | ||||
-rw-r--r-- | system/backup-aura-states.service | 14 | ||||
-rw-r--r-- | system/backup-aura-states.timer | 10 |
3 files changed, 50 insertions, 0 deletions
diff --git a/scripts/backup-aura-states b/scripts/backup-aura-states new file mode 100755 index 0000000..86137b7 --- /dev/null +++ b/scripts/backup-aura-states @@ -0,0 +1,26 @@ +#!/usr/bin/env bash + +timestamp="$(date +"%Y%m%d-%H%M%S")-" + +# If the backup location doesn't exist yet, create it +if [ ! -d $aura_states_folder_destination ]; then + mkdir -p $aura_states_folder_destination +fi + +if [ -d $aura_states_parent_source ]; then + cd $aura_states_parent_source +else + exit 1 +fi + +echo "$aura_states_folder_source -> $aura_states_folder_destination$timestamp$aura_states_folder_source$tar_suffix$gpg_suffix" +# tar in /tmp +tar cfJ $tmp$timestamp$aura_states_folder_source$tar_suffix $aura_states_folder_source +# gpg to aura_states_folder_destination +gpg -e \ + -r "$gpg_public_key" \ + -o $aura_states_folder_destination$timestamp$aura_states_folder_source$tar_suffix$gpg_suffix \ + $tmp$timestamp$aura_states_folder_source$tar_suffix +# delete tar in /tmp +rm -f $tmp$timestamp$aura_states_folder_source$tar_suffix + diff --git a/system/backup-aura-states.service b/system/backup-aura-states.service new file mode 100644 index 0000000..5dfc42a --- /dev/null +++ b/system/backup-aura-states.service @@ -0,0 +1,14 @@ +[Unit] +Description=Backup /var/cache/aura/states directory +ConditionFileIsExecutable=/usr/lib/systemd/scripts/backup-aura-states +ConditionFileIsExecutable=/usr/bin/sudo +ConditionFileIsExecutable=/usr/bin/aura + +[Service] +EnvironmentFile=/etc/backup-settings +Nice=19 +IOSchedulingClass=2 +IOSchedulingPriority=7 +ExecStartPre=/usr/bin/sudo /usr/bin/aura -B -q +ExecStart=/usr/lib/systemd/scripts/backup-aura-states + diff --git a/system/backup-aura-states.timer b/system/backup-aura-states.timer new file mode 100644 index 0000000..aed709d --- /dev/null +++ b/system/backup-aura-states.timer @@ -0,0 +1,10 @@ +[Unit] +Description=Backup aura states every Monday + +[Timer] +# Every Monday +OnCalendar=Mon *-*-* 05:00 +Persistent=true + +[Install] +WantedBy=timers.target |