Files
hassio-addons-avm/rsync-local/run.sh
2021-06-29 12:37:08 +03:00

42 lines
1.1 KiB
Bash

#!/usr/bin/env bashio
# shellcheck shell=bash
set -e
FOLDERS=$(bashio::config 'folders')
EXTERNAL_FOLDER=$(bashio::config 'external_folder')
if ! bashio::config.has_value 'external_device'; then
bashio::log.info "Detected devices..."
ls -h1 /dev/sd*
bashio::log.info "Select your device and insert it in the 'external_device' addon option."
bashio::log.info "For example: \"External_device: /dev/sda1\""
bashio::log.info "Then restart the addon for the first sync."
else
bashio::log.info "Starting sync..."
EXTERNAL_DEVICE=$(bashio::config 'external_device')
if bashio::config.has_value 'options'; then
OPTIONS=$(bashio::config 'options')
bashio::log.info "Use options $OPTIONS"
else
OPTIONS='-archive --recursive --compress --delete --prune-empty-dirs'
fi
bashio::log.info "Mounting device ${EXTERNAL_DEVICE}"
mkdir -p /external
mount "${EXTERNAL_DEVICE}" /external
for folder in $FOLDERS; do
bashio::log.info "Sync $folder -> ${EXTERNAL_DEVICE}/${EXTERNAL_FOLDER}"
# shellcheck disable=SC2086
rsync ${OPTIONS} \
"$folder" "/external/${EXTERNAL_FOLDER}"
done
umount /external
bashio::log.info "Synced all folders"
fi