[pve-devel] [PATCH storage 2/2] postinst: remove old file if new one is identical
Fabian Ebner
f.ebner at proxmox.com
Thu Jun 17 10:58:26 CEST 2021
Suggested-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
Signed-off-by: Fabian Ebner <f.ebner at proxmox.com>
---
debian/postinst | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/debian/postinst b/debian/postinst
index 963ad06..9dbb3b9 100644
--- a/debian/postinst
+++ b/debian/postinst
@@ -18,7 +18,12 @@ case "$1" in
base=$(basename --suffix=".cred" "$file")
target="/etc/pve/priv/storage/$base.pw"
if [ -f "$target" ]; then
- echo "Warning: not renaming $file, because $target already exists!" >&2
+ if diff "$file" "$target" >&2 > /dev/null; then
+ echo "Info: removing $file, because it is identical to $target" >&2
+ rm "$file" || { echo "$warning" && continue; }
+ else
+ echo "Warning: not renaming $file, because $target already exists and differs!" >&2
+ fi
else
echo "Info: renaming $file to $target" >&2
mv "$file" "$target" || { echo "$warning" && continue; }
--
2.30.2
More information about the pve-devel
mailing list