From 1bf0372e61596f40b6d42329e4ea2d896928ebf4 Mon Sep 17 00:00:00 2001 From: Patrick Spek Date: Tue, 5 Mar 2024 09:28:47 +0100 Subject: Add base seaweedfs playbook to jaomox --- playbooks.d/seaweedfs/playbook.bash | 75 ++------------------------------- playbooks.d/seaweedfs/share/master.conf | 8 ++++ registry.d/jaomox.tyil.net | 1 + 3 files changed, 13 insertions(+), 71 deletions(-) create mode 100644 playbooks.d/seaweedfs/share/master.conf diff --git a/playbooks.d/seaweedfs/playbook.bash b/playbooks.d/seaweedfs/playbook.bash index ad2dd3d..7405cb5 100644 --- a/playbooks.d/seaweedfs/playbook.bash +++ b/playbooks.d/seaweedfs/playbook.bash @@ -5,7 +5,6 @@ playbook_add() { local dl_baseurl local dl_binary local dl_version - local buffer # Install seaweedfs case "${BASHTARD_PLATFORM[arch]}" in @@ -15,15 +14,14 @@ playbook_add() { dl_baseurl="https://github.com/seaweedfs/seaweedfs/releases/download" dl_binary="$(printf "%s_%s.tar.gz" "${BASHTARD_PLATFORM[os]}" "$dl_arch")" - dl_version="3.50" + dl_version="$(config "$BASHTARD_PLAYBOOK.version" "3.63")" buffer="$(tmpdir)" chgdir "$buffer" info "$BASHTARD_PLAYBOOK/add" "Fetching $dl_baseurl/$dl_version/$dl_binary" - curl -L "$dl_baseurl/$dl_version/$dl_binary" \ - > "$dl_binary" + curl -L "$dl_baseurl/$dl_version/$dl_binary" > "$dl_binary" tar xzf "$dl_binary" mv -v -- "weed" "$(config "fs.bindir")/weed" @@ -31,80 +29,15 @@ playbook_add() { # Create mount.weed symlink ln -fsv "$(config "fs.bindir")/weed" "$(config "fs.bindir")/mount.weed" - # Generate systemd unit file - case "${BASHTARD_PLATFORM[init]}" in - systemd) - cat <<-EOF > "$(config "fs.etcdir")/systemd/system/seaweedfs.service" - [Unit] - Description=SeaweedFS - After=network.target - - [Service] - Type=simple - User=root - Group=root - - ExecStart=$(config "fs.bindir")/weed server -options="$(config "fs.etcdir")/seaweedfs/server.conf" - WorkingDirectory=/var/lib/seaweedfs - SyslogIdentifier=seaweedfs - - [Install] - WantedBy=multi-user.target - EOF - - systemctl daemon-reload - ;; - *) die "NYI" - esac - - # Create directories - mkdir -pv -- "/var/lib/seaweedfs" + # Create directories used by seaweedfs mkdir -pv -- "$(config "fs.etcdir")/seaweedfs" - - # Perform initial configuration - playbook_sync - - # Start the service - svc enable seaweedfs - svc start seaweedfs } 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" \ - > "$buffer" - - if diff -q "$buffer" "$conf" - then - return - fi - - mv -- "$buffer" "$conf" - - [[ "$BASHTARD_ACTION" == "add" ]] && return - - # Reload service - svc restart seaweedfs + :; } playbook_del() { - # Stop service - svc stop seaweedfs - svc disable seaweedfs - - # Remove systemd unit file - rm -fr -- "$(config "fs.etcdir")/systemd/system/seaweedfs.service" - # Remove configuration files rm -fr -- "$(config "fs.etcdir")/seaweedfs" diff --git a/playbooks.d/seaweedfs/share/master.conf b/playbooks.d/seaweedfs/share/master.conf new file mode 100644 index 0000000..fb72a28 --- /dev/null +++ b/playbooks.d/seaweedfs/share/master.conf @@ -0,0 +1,8 @@ +ip=${ip} +port=${port} + +peers=${peers} +mdir=${mdir} + +defaultReplication=${replication} +volumeSizeLimitMB=${volume_size} diff --git a/registry.d/jaomox.tyil.net b/registry.d/jaomox.tyil.net index 983e06c..3ef42b7 100644 --- a/registry.d/jaomox.tyil.net +++ b/registry.d/jaomox.tyil.net @@ -1,3 +1,4 @@ +seaweedfs ssh user-tyil vpn-tinc -- cgit v1.1