From d92c9038edc12798b6187ec5fe4422b525c3b4d4 Mon Sep 17 00:00:00 2001
From: Patrick Spek
Date: Tue, 16 May 2023 09:11:29 +0200
Subject: Only restart if SeaweedFS config's changed
---
playbooks.d/seaweedfs/playbook.bash | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
(limited to 'playbooks.d/seaweedfs/playbook.bash')
diff --git a/playbooks.d/seaweedfs/playbook.bash b/playbooks.d/seaweedfs/playbook.bash
index 3eadac6..ad2dd3d 100644
--- a/playbooks.d/seaweedfs/playbook.bash
+++ b/playbooks.d/seaweedfs/playbook.bash
@@ -70,13 +70,26 @@ playbook_add() {
}
playbook_sync() {
+ local buffer
+ local conf
+
+ buffer="$(tmpfile)"
+ conf="$(config "fs.etcdir")/seaweedfs/server.conf"
+
# Generate config file
file_template "server.conf" \
"datadir=/var/lib/seaweedfs" \
"ip=$(config "vpn-tinc.ipv4")" \
"volume_size=1024" \
"reserved_space=10GiB" \
- > "$(config "fs.etcdir")/seaweedfs/server.conf"
+ > "$buffer"
+
+ if diff -q "$buffer" "$conf"
+ then
+ return
+ fi
+
+ mv -- "$buffer" "$conf"
[[ "$BASHTARD_ACTION" == "add" ]] && return
--
cgit v1.1