From 1113a3288879a67cdeb1712b7e376406c743f435 Mon Sep 17 00:00:00 2001 From: hygienic-books Date: Sun, 5 Mar 2023 22:15:55 +0100 Subject: [PATCH] feat(hook): Use separate hook per transaction type (#1) --- README.md | 1 + ...snapshot.hook => pacman-zfs-snapshot-install.hook | 4 +--- pacman-zfs-snapshot-remove.hook | 12 ++++++++++++ pacman-zfs-snapshot-upgrade.hook | 12 ++++++++++++ 4 files changed, 26 insertions(+), 3 deletions(-) rename pacman-zfs-snapshot.hook => pacman-zfs-snapshot-install.hook (79%) create mode 100644 pacman-zfs-snapshot-remove.hook create mode 100644 pacman-zfs-snapshot-upgrade.hook diff --git a/README.md b/README.md index 51484fe..b30e752 100644 --- a/README.md +++ b/README.md @@ -53,4 +53,5 @@ The following _scopes_ are known for this project. A Conventional Commits commit - `auto`: Change how `zfs-auto-snapshot` is run - `conf`: How we deal with script config - `script`: Any other script work that doesn't specifically fall into the above scopes +- `hook`: Configuring the hook(s) - `meta`: Affects the project's repo layout, readme content, file names etc. diff --git a/pacman-zfs-snapshot.hook b/pacman-zfs-snapshot-install.hook similarity index 79% rename from pacman-zfs-snapshot.hook rename to pacman-zfs-snapshot-install.hook index 668e9cf..9481649 100644 --- a/pacman-zfs-snapshot.hook +++ b/pacman-zfs-snapshot-install.hook @@ -1,14 +1,12 @@ [Trigger] Operation = Install -Operation = Upgrade -Operation = Remove Type = Package Target = * [Action] Description = Create ZFS snapshot on active system dataset When = PreTransaction -Exec = /bin/sh -c 'while read -r f; do echo "$f"; done | /usr/local/bin/pacman-zfs-snapshot' +Exec = /bin/sh -c 'while read -r f; do echo "$f"; done | /usr/local/bin/pacman-zfs-snapshot install' Depends = zfs-auto-snapshot AbortOnFail NeedsTargets diff --git a/pacman-zfs-snapshot-remove.hook b/pacman-zfs-snapshot-remove.hook new file mode 100644 index 0000000..204b04a --- /dev/null +++ b/pacman-zfs-snapshot-remove.hook @@ -0,0 +1,12 @@ +[Trigger] +Operation = Remove +Type = Package +Target = * + +[Action] +Description = Create ZFS snapshot on active system dataset +When = PreTransaction +Exec = /bin/sh -c 'while read -r f; do echo "$f"; done | /usr/local/bin/pacman-zfs-snapshot remove' +Depends = zfs-auto-snapshot +AbortOnFail +NeedsTargets diff --git a/pacman-zfs-snapshot-upgrade.hook b/pacman-zfs-snapshot-upgrade.hook new file mode 100644 index 0000000..b41f3ab --- /dev/null +++ b/pacman-zfs-snapshot-upgrade.hook @@ -0,0 +1,12 @@ +[Trigger] +Operation = Upgrade +Type = Package +Target = * + +[Action] +Description = Create ZFS snapshot on active system dataset +When = PreTransaction +Exec = /bin/sh -c 'while read -r f; do echo "$f"; done | /usr/local/bin/pacman-zfs-snapshot upgrade' +Depends = zfs-auto-snapshot +AbortOnFail +NeedsTargets