#!/usr/bin/env bash playbook_add() { local dl_arch local dl_baseurl local dl_binary local dl_version # Install seaweedfs case "${BASHTARD_PLATFORM[arch]}" in x86_64) dl_arch=amd64 ;; aarch64) dl_arch=arm64 ;; esac dl_baseurl="https://github.com/seaweedfs/seaweedfs/releases/download" dl_binary="$(printf "%s_%s.tar.gz" "${BASHTARD_PLATFORM[os]}" "$dl_arch")" 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" tar xzf "$dl_binary" mv -v -- "weed" "$(config "fs.bindir")/weed" # Create mount.weed symlink ln -fsv "$(config "fs.bindir")/weed" "$(config "fs.bindir")/mount.weed" # Create directories used by seaweedfs mkdir -pv -- "$(config "fs.etcdir")/seaweedfs" } playbook_sync() { file_template "seaweedfs-mount@.service"\ > "/etc/systemd/system/seaweedfs-mount@.service" } playbook_del() { # Remove configuration files rm -fr -- "$(config "fs.etcdir")/seaweedfs" # Remove downloaded binary and symlinks rm -fr -- "$(config "fs.bindir")/weed" rm -fr -- "$(config "fs.bindir")/mount.weed" }