Watchdogs/ folder + host conf rename
Move all watchdog scripts to a dedicated Watchdogs/ folder: Docker_Essentials/docker_watchdog.sh → Watchdogs/ unRAID_Essentials/system_watchdog.sh → Watchdogs/ unRAID_Essentials/resource_watchdog.sh → Watchdogs/ Orchestrators/watchdog_orchestrator.sh → Watchdogs/ Tools/watchdog_skip_list_manager.sh → Watchdogs/ Rename host config files: master_host1.conf → host1.conf master_host2.conf → host2.conf Update all references across the ecosystem: master.conf: WATCHDOG_ORCHESTRATOR_SCRIPTS paths → Watchdogs/ load_config.sh: host*.conf glob + all comments git_pull_execute.sh: sparse checkout glob + all comments Partnership/ssh_setup.sh: HOST_CONF path construction user_script_plug-in.sh: all script paths + per-host conf path common.sh, README.md, README-User_Script_Plug-in.md: comment refs All Partnership, Fallback, Monitors, Transcodes, Tools scripts: comment refs
This commit is contained in:
+14
-14
@@ -13,7 +13,7 @@ Each domain and subdomain has an independent TLS certificate and must be listed
|
||||
separately. `cert_monitor.sh` makes one openssl connection per entry.
|
||||
|
||||
```bash
|
||||
# master_host1.conf
|
||||
# host1.conf
|
||||
HOST1_CERT_MONITOR_DOMAINS=(
|
||||
"Gmer4Lfe.com"
|
||||
"Gmer4Lfe.us"
|
||||
@@ -21,7 +21,7 @@ HOST1_CERT_MONITOR_DOMAINS=(
|
||||
# "cloud.Gmer4Lfe.com"
|
||||
)
|
||||
|
||||
# master_host2.conf
|
||||
# host2.conf
|
||||
HOST2_CERT_MONITOR_DOMAINS=(
|
||||
"Jayred365.com"
|
||||
# "auth.Jayred365.com"
|
||||
@@ -63,12 +63,12 @@ CERT_TIMEOUT=10 # seconds per domain before declaring FAILED
|
||||
### Drive Ignore List
|
||||
|
||||
```bash
|
||||
# master_host1.conf
|
||||
# host1.conf
|
||||
HOST1_SMART_IGNORE_DRIVES=(
|
||||
"sda" # boot USB flash drive — no meaningful SMART data
|
||||
)
|
||||
|
||||
# master_host2.conf
|
||||
# host2.conf
|
||||
HOST2_SMART_IGNORE_DRIVES=(
|
||||
"sda" # boot USB flash drive
|
||||
)
|
||||
@@ -109,7 +109,7 @@ if `dynamix.cfg` is not found (e.g., running outside of unRAID).
|
||||
### Share Configuration
|
||||
|
||||
```bash
|
||||
# master_host1.conf
|
||||
# host1.conf
|
||||
HOST1_BACKUP_VERIFY_SHARES=(
|
||||
# empty — uses HOST1_DAILY_SYNC_SHARES automatically
|
||||
# "/mnt/user/Movies" # override to check specific shares only
|
||||
@@ -230,9 +230,9 @@ data — it just doesn't trigger a notification for that condition.
|
||||
| State File | Source | What It Shows |
|
||||
|-----------|--------|---------------|
|
||||
| `FALLBACK_STATE_FILE` | `Fallback/fallback.sh` | Current fallback state (NORMAL/FALLBACK/etc.) |
|
||||
| `SYS_WATCHDOG_FAILED_FILE` | `Docker_Essentials/docker_watchdog.sh` | Container skip list — needs human attention |
|
||||
| `WATCHDOG_STATE_FILE` | `Docker_Essentials/docker_watchdog.sh` | Active container strike counts |
|
||||
| `SYS_WATCHDOG_STATE_FILE` | `unRAID_Essentials/system_watchdog.sh` | Active system watchdog strikes |
|
||||
| `SYS_WATCHDOG_FAILED_FILE` | `Watchdogs/docker_watchdog.sh` | Container skip list — needs human attention |
|
||||
| `WATCHDOG_STATE_FILE` | `Watchdogs/docker_watchdog.sh` | Active container strike counts |
|
||||
| `SYS_WATCHDOG_STATE_FILE` | `Watchdogs/system_watchdog.sh` | Active system watchdog strikes |
|
||||
| `BANDWIDTH_LOG` | `bandwidth_monitor.sh` | Yesterday's transfer history |
|
||||
| `TRANSCODE_DAILY_LOG` | `Transcodes/` | Weekly transcode statistics |
|
||||
| `CERT_MONITOR_DOMAINS` | live openssl check | Current cert status per domain |
|
||||
@@ -244,11 +244,11 @@ data — it just doesn't trigger a notification for that condition.
|
||||
### Emby Credentials
|
||||
|
||||
```bash
|
||||
# master_host1.conf
|
||||
# host1.conf
|
||||
HOST1_EMBY_URL="http://192.168.50.2:8096"
|
||||
HOST1_EMBY_API_KEY="0c27448d93a7431f9ac63569f7655829"
|
||||
|
||||
# master_host2.conf
|
||||
# host2.conf
|
||||
HOST2_EMBY_URL="http://192.168.50.3:8096"
|
||||
HOST2_EMBY_API_KEY="<host2_api_key>"
|
||||
```
|
||||
@@ -306,7 +306,7 @@ in `unRAID_Essentials/`.
|
||||
### Pool Ignore List
|
||||
|
||||
```bash
|
||||
# master_host1.conf
|
||||
# host1.conf
|
||||
HOST1_ZFS_REPORT_IGNORE_POOLS=(
|
||||
"disk10" # JBOD member — high usage expected, exclude from report noise
|
||||
"disk9"
|
||||
@@ -315,7 +315,7 @@ HOST1_ZFS_REPORT_IGNORE_POOLS=(
|
||||
"disk5"
|
||||
)
|
||||
|
||||
# master_host2.conf
|
||||
# host2.conf
|
||||
HOST2_ZFS_REPORT_IGNORE_POOLS=(
|
||||
# list host2's JBOD members here
|
||||
)
|
||||
@@ -392,7 +392,7 @@ ZFS_REPORT_AVAIL_WARN_GB=20
|
||||
ZFS_REPORT_DOCKER_TOP=10
|
||||
```
|
||||
|
||||
### master_host*.conf
|
||||
### host*.conf
|
||||
|
||||
```bash
|
||||
# cert_monitor.sh
|
||||
@@ -485,7 +485,7 @@ emby_session_report.sh --dry-run # test connectivity, generate report, no noti
|
||||
### --status
|
||||
|
||||
Shows current configuration and exits without running checks. Use to verify
|
||||
configuration is loaded correctly after editing `master.conf` or `master_host*.conf`.
|
||||
configuration is loaded correctly after editing `master.conf` or `host*.conf`.
|
||||
|
||||
```bash
|
||||
cert_monitor.sh --status # domain list, CERT_WARN_DAYS, CERT_CRIT_DAYS, timeout
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
# CONFIGURATION
|
||||
# ==============================================================================================
|
||||
#
|
||||
# master_host*.conf
|
||||
# host*.conf
|
||||
#
|
||||
# HOST*_BACKUP_VERIFY_SHARES
|
||||
# Shares to verify. Leave empty to use HOST*_DAILY_SYNC_SHARES automatically.
|
||||
@@ -140,7 +140,7 @@ fi
|
||||
|
||||
if [[ ${#VERIFY_SHARES[@]} -eq 0 ]]; then
|
||||
warn "No shares configured for $MY_ID — nothing to verify"
|
||||
warn "Check HOST*_BACKUP_VERIFY_SHARES or HOST*_DAILY_SYNC_SHARES in master_host*.conf"
|
||||
warn "Check HOST*_BACKUP_VERIFY_SHARES or HOST*_DAILY_SYNC_SHARES in host*.conf"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
||||
@@ -90,9 +90,6 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
source "$SCRIPT_DIR/../load_config.sh"
|
||||
|
||||
# Monitor script — output is the point
|
||||
SILENT_MODE=false
|
||||
|
||||
parse_args "$@"
|
||||
|
||||
# ── Parse mode from PARSED_ARGS ───────────────────────────────────────────────────────────────
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
# CONFIGURATION
|
||||
# ==============================================================================================
|
||||
#
|
||||
# master_host*.conf
|
||||
# host*.conf
|
||||
#
|
||||
# HOST*_CERT_MONITOR_DOMAINS
|
||||
# Domains this host monitors. Each domain and subdomain is a separate entry —
|
||||
@@ -91,9 +91,6 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
source "$SCRIPT_DIR/../load_config.sh"
|
||||
|
||||
# Monitor script — output is the point
|
||||
SILENT_MODE=false
|
||||
|
||||
parse_args "$@"
|
||||
|
||||
# ==============================================================================================
|
||||
@@ -126,7 +123,7 @@ detect_hosts
|
||||
# Empty array guard
|
||||
if [[ ${#CERT_MONITOR_DOMAINS[@]} -eq 0 ]]; then
|
||||
warn "CERT_MONITOR_DOMAINS is empty for $MY_ID"
|
||||
warn "Check HOST*_CERT_MONITOR_DOMAINS in master_host*.conf"
|
||||
warn "Check HOST*_CERT_MONITOR_DOMAINS in host*.conf"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
# CONFIGURATION
|
||||
# ==============================================================================================
|
||||
#
|
||||
# master_host*.conf
|
||||
# host*.conf
|
||||
#
|
||||
# HOST*_EMBY_URL
|
||||
# Emby server URL for this host. Aliased by detect_hosts() → EMBY_URL.
|
||||
@@ -87,9 +87,6 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
source "$SCRIPT_DIR/../load_config.sh"
|
||||
|
||||
# Monitor/report script — output is the point
|
||||
SILENT_MODE=false
|
||||
|
||||
parse_args "$@"
|
||||
|
||||
# ==============================================================================================
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
# CONFIGURATION
|
||||
# ==============================================================================================
|
||||
#
|
||||
# master_host*.conf
|
||||
# host*.conf
|
||||
#
|
||||
# HOST*_SMART_IGNORE_DRIVES
|
||||
# Drives skipped in SMART monitoring. Aliased by detect_hosts() →
|
||||
@@ -80,9 +80,6 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
source "$SCRIPT_DIR/../load_config.sh"
|
||||
|
||||
# Monitor script — output is the point
|
||||
SILENT_MODE=false
|
||||
|
||||
parse_args "$@"
|
||||
|
||||
# ==============================================================================================
|
||||
|
||||
@@ -116,9 +116,6 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
source "$SCRIPT_DIR/../load_config.sh"
|
||||
|
||||
# Report/monitor script — output is the point when sending
|
||||
SILENT_MODE=false
|
||||
|
||||
parse_args "$@"
|
||||
|
||||
# ==============================================================================================
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
# CONFIGURATION
|
||||
# ==============================================================================================
|
||||
#
|
||||
# master_host*.conf
|
||||
# host*.conf
|
||||
#
|
||||
# HOST*_ZFS_REPORT_IGNORE_POOLS
|
||||
# Pools excluded from health reporting. Single-disk JBOD members generate
|
||||
@@ -113,9 +113,6 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
source "$SCRIPT_DIR/../load_config.sh"
|
||||
|
||||
# Monitor/report script — output is the point
|
||||
SILENT_MODE=false
|
||||
|
||||
parse_args "$@"
|
||||
|
||||
DOCKER_TIMEOUT=15
|
||||
|
||||
Reference in New Issue
Block a user