Added all needed profiles and improved master,conf and rsync.sh
This commit is contained in:
+35
-14
@@ -66,12 +66,13 @@ SLEEP=300
|
||||
# Max number of concurrently running rsync processes
|
||||
MAX_RSYNC_PROCS=1
|
||||
# Container start/stop/restart before and after rsync
|
||||
CRITICAL_CONTAINER_NAMES=()
|
||||
CRITICAL_CONTAINER_NAMES=("")
|
||||
# Containers that need delayed before starting
|
||||
DELAYED_CONTAINERS=()
|
||||
DELAYED_CONTAINERS=("")
|
||||
# Delay in seconds between starting containers, useful for things like Authelia
|
||||
CONTAINER_DELAY=5
|
||||
|
||||
# Not include logs during transfer
|
||||
EXCLUDE_DIRS=("")
|
||||
#-----------------------------------------------------------------------------------------------
|
||||
#----------------------------- Profile System ---------------------------------------------------
|
||||
#-----------------------------------------------------------------------------------------------
|
||||
@@ -81,38 +82,58 @@ CONTAINER_DELAY=5
|
||||
declare -A PROFILE_MAX_PROCS
|
||||
PROFILE_MAX_PROCS["arrs_stack"]=2
|
||||
PROFILE_MAX_PROCS["critical-data"]=2
|
||||
PROFILE_MAX_PROCS["shows"]=1
|
||||
PROFILE_MAX_PROCS["gmer4lfe"]=1
|
||||
PROFILE_MAX_PROCS["important-data"]=2
|
||||
PROFILE_MAX_PROCS["emby"]=1
|
||||
# Bandwidth limits per profile (KB/s, 0 = unlimited)
|
||||
declare -A PROFILE_BW_LIMIT
|
||||
PROFILE_BW_LIMIT["arrs_stack"]=5000
|
||||
PROFILE_BW_LIMIT["critical-data"]=9500
|
||||
PROFILE_BW_LIMIT["shows"]=8000
|
||||
PROFILE_BW_LIMIT["gmer4lfe"]=8000
|
||||
PROFILE_BW_LIMIT["important-data"]=9500
|
||||
PROFILE_BW_LIMIT["emby"]=8000
|
||||
# Retry logic per profile
|
||||
declare -A PROFILE_RETRY_COUNT
|
||||
PROFILE_RETRY_COUNT["arrs_stack"]=3
|
||||
PROFILE_RETRY_COUNT["movies"]=3
|
||||
PROFILE_RETRY_COUNT["shows"]=3
|
||||
PROFILE_RETRY_COUNT["critical-data"]=3
|
||||
PROFILE_RETRY_COUNT["gmer4lfe"]=3
|
||||
PROFILE_RETRY_COUNT["important-data"]=3
|
||||
PROFILE_RETRY_COUNT["emby"]=3
|
||||
# Sleep between retries per profile (seconds)
|
||||
declare -A PROFILE_SLEEP
|
||||
PROFILE_SLEEP["arrs_stack"]=300
|
||||
PROFILE_SLEEP["critical-data"]=300
|
||||
PROFILE_SLEEP["shows"]=300
|
||||
PROFILE_SLEEP["gmer4lfe"]=300
|
||||
PROFILE_SLEEP["important-data"]=300
|
||||
PROFILE_SLEEP["emby"]=300
|
||||
# Containers to stop/start per profile (space-separated strings)
|
||||
declare -A PROFILE_CRITICAL_CONTAINER_NAMES
|
||||
PROFILE_CRITICAL_CONTAINER_NAMES["arrs_stack"]="Sonarr Lidarr Readarr Radarr Prowlarr Bazarr Pinchflat"
|
||||
PROFILE_CRITICAL_CONTAINER_NAMES["critical-data"]=""
|
||||
PROFILE_CRITICAL_CONTAINER_NAMES["shows"]=""
|
||||
PROFILE_CRITICAL_CONTAINER_NAMES["critical-data"]="Mariadb-Authelia Redis-Authelia Lldap-Gmer4Lfe NginxProxyManager Authelia"
|
||||
PROFILE_CRITICAL_CONTAINER_NAMES["gmer4lfe"]="Organizrv2-Gmer4Lfe UptimeKuma-Gmer4Lfe VaultWarden-Gmer4Lfe"
|
||||
PROFILE_CRITICAL_CONTAINER_NAMES["important-data"]="Postgres-NextCloud NextCloud"
|
||||
PROFILE_CRITICAL_CONTAINER_NAMES["emby"]=""
|
||||
# Delayed containers per profile (space-separated strings)
|
||||
declare -A PROFILE_DELAYED_CONTAINERS
|
||||
PROFILE_DELAYED_CONTAINERS["arrs_stack"]="Mariadb-Authelia Redis-Authelia Lldap-Gmer4Lfe NginxProxyManager Authelia"
|
||||
PROFILE_DELAYED_CONTAINERS["arrs_stack"]=""
|
||||
PROFILE_DELAYED_CONTAINERS["critical-data"]="Authelia"
|
||||
PROFILE_DELAYED_CONTAINERS["shows"]=""
|
||||
PROFILE_DELAYED_CONTAINERS["gmer4lfe"]=""
|
||||
PROFILE_DELAYED_CONTAINERS["important-data"]="NextCloud"
|
||||
PROFILE_DELAYED_CONTAINERS["emby"]=""
|
||||
# Delay in seconds before starting delayed containers per profile (seconds)
|
||||
declare -A PROFILE_CONTAINER_DELAY
|
||||
PROFILE_CONTAINER_DELAY["arrs_stack"]=5
|
||||
PROFILE_CONTAINER_DELAY["critical-data"]=10
|
||||
PROFILE_CONTAINER_DELAY["shows"]=0
|
||||
|
||||
PROFILE_CONTAINER_DELAY["gmer4lfe"]=5
|
||||
PROFILE_CONTAINER_DELAY["important-data"]=10
|
||||
PROFILE_CONTAINER_DELAY["emby"]=5
|
||||
# Not include logs or other file types during transfer per profile
|
||||
declare -A PROFILE_EXCLUDE_DIRS
|
||||
PROFILE_EXCLUDE_DIRS["arrs_stack"]="logs"
|
||||
PROFILE_EXCLUDE_DIRS["critical-data"]="logs"
|
||||
PROFILE_EXCLUDE_DIRS["gmer4lfe"]="logs"
|
||||
PROFILE_EXCLUDE_DIRS["important-data"]="logs"
|
||||
PROFILE_EXCLUDE_DIRS["emby"]="logs"
|
||||
#-----------------------------------------------------------------------------------------------
|
||||
#----------------------------- End of Master Config ---------------------------------------------
|
||||
#-----------------------------------------------------------------------------------------------
|
||||
@@ -74,6 +74,7 @@ DELAYED_CONTAINERS=(${PROFILE_DELAYED_CONTAINERS[$PROFILE_NAME]})
|
||||
CONTAINER_DELAY=${PROFILE_CONTAINER_DELAY[$PROFILE_NAME]:-$CONTAINER_DELAY}
|
||||
RETRY_COUNT=${PROFILE_RETRY_COUNT[$PROFILE_NAME]:-$RETRY_COUNT}
|
||||
SLEEP=${PROFILE_SLEEP[$PROFILE_NAME]:-$SLEEP}
|
||||
EXCLUDE_DIRS=(${PROFILE_EXCLUDE_DIRS[$PROFILE_NAME]})
|
||||
|
||||
echo "Settings: MAX_RSYNC_PROCS=$MAX_RSYNC_PROCS, BW_LIMIT=$BW_LIMIT, CONTAINERS=${CRITICAL_CONTAINER_NAMES[*]}"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user