summaryrefslogtreecommitdiff
path: root/playbooks.d/seaweedfs/playbook.bash
diff options
context:
space:
mode:
Diffstat (limited to 'playbooks.d/seaweedfs/playbook.bash')
-rw-r--r--playbooks.d/seaweedfs/playbook.bash15
1 files changed, 14 insertions, 1 deletions
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