feat: rename array orchestrators, add docker_update remainder mode
- Rename array_start.sh → array_started.sh, array_stop.sh → array_stopping.sh
to clarify these are event-driven (array has started/is stopping), not imperative
- Update all references across 9 files (master.conf, user_script_plug-in.sh,
watchdogs, continuous_scripts_status.sh, claude_startup.sh)
- Add --remainder mode to docker_update.sh: updates all running containers
excluding daily containers, weekly sync-window containers (emby + critical-data),
and fallback coverage containers (FALLBACK_${MY_ID}_COVERS_${REMOTE_ID}_TIER*)
Fallback containers excluded because the remote server owns their version —
independent updates risk writeback incompatibility on handback
- weekly_sync_maintenance.sh calls docker_update.sh --remainder as final step
- git_pull_execute.sh: add safe.directory config to fix dubious ownership error
when running as root on a directory owned by uid 1000
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
eaade9a9d4
commit
f16c962ac0
+12
-12
@@ -14,7 +14,7 @@
|
||||
#
|
||||
# You do not need to schedule every script below. The orchestrators cover it all:
|
||||
#
|
||||
# array_start.sh at array start — launches ALL startup scripts in order
|
||||
# array_started.sh at array start — launches ALL startup scripts in order
|
||||
# transcode_management.sh every 3 min — cleanup then manager (order critical)
|
||||
# critical_sync_maintenance.sh every 15 min — auth + Emby dirty sync + partnership
|
||||
# intermediate_sync_maintenance.sh every 4 hours — arr library sync + artwork fetch
|
||||
@@ -61,7 +61,7 @@
|
||||
# v1.7 — cert_monitor.sh added
|
||||
# v1.8 — Monitors/ folder with all monitoring scripts
|
||||
# v1.9 — transcode_management.sh added to Orchestrators/
|
||||
# v2.0 — Major restructure: array_start.sh single entry point, daily/weekly orchestrators,
|
||||
# v2.0 — Major restructure: array_started.sh single entry point, daily/weekly orchestrators,
|
||||
# sunday_morning_coffee_report.sh, docker_network_connect combined,
|
||||
# inotify_tuning.sh, arr path translation, version checking, nuclear mode flags
|
||||
# v2.1 — critical_sync_maintenance.sh, Partnership/ folder, system_tuning_monitor.sh,
|
||||
@@ -112,7 +112,7 @@
|
||||
# docker_watchdog.sh [continuous] two-tier container self-healing watchdog
|
||||
# fallback.sh [continuous] mutual fallback state machine
|
||||
#
|
||||
# bash /mnt/user/appdata/unraid_scripts/Orchestrators/array_start.sh
|
||||
# bash /mnt/user/appdata/unraid_scripts/Orchestrators/array_started.sh
|
||||
|
||||
|
||||
# ── TRANSCODE MANAGEMENT ──────────────────────────────────────────────────────────────────────
|
||||
@@ -416,7 +416,7 @@
|
||||
# ──────────────────────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
# fallback.sh — [continuous] mutual fallback state machine
|
||||
# Started by array_start.sh on both servers independently.
|
||||
# Started by array_started.sh on both servers independently.
|
||||
# Every FALLBACK_CHECK_INTERVAL (120s) pings: remote Tailscale IP + 8.8.8.8
|
||||
# States: NORMAL / FALLBACK / NO_INTERNET / DARK
|
||||
# FALLBACK: starts remote containers in tiers across 24 hours:
|
||||
@@ -510,7 +510,7 @@
|
||||
# ──────────────────────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
# docker_watchdog.sh — [continuous] two-tier container self-healing monitor
|
||||
# Started by array_start.sh. Every DOCKER_WATCHDOG_INTERVAL (900s = 15min).
|
||||
# Started by array_started.sh. Every DOCKER_WATCHDOG_INTERVAL (900s = 15min).
|
||||
#
|
||||
# Tier 1 — explicit per-container (configured in master_host*.conf):
|
||||
# Memory hard limits: immediate restart when exceeded — no strikes, no waiting
|
||||
@@ -577,7 +577,7 @@
|
||||
# bash /mnt/user/appdata/unraid_scripts/Docker_Essentials/docker_weekly_restart.sh
|
||||
|
||||
# docker_network_connect.sh — ensure custom networks exist and containers are connected
|
||||
# Called by array_start.sh. Idempotent — silent when everything is already correct.
|
||||
# Called by array_started.sh. Idempotent — silent when everything is already correct.
|
||||
# Network missing → create (bridge driver, auto-assigned subnet) → notify.
|
||||
# Network creation should only happen after an unRAID update wiped networks — notify tells you.
|
||||
# Configured via HOST*_NETWORK_CONNECT_NETWORKS and HOST*_NETWORK_CONNECT_CONTAINERS.
|
||||
@@ -637,7 +637,7 @@
|
||||
# ──────────────────────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
# system_watchdog.sh — [continuous] three-tier server stability last-resort watchdog
|
||||
# Started by array_start.sh. Every SYSTEM_WATCHDOG_INTERVAL (300s = 5min).
|
||||
# Started by array_started.sh. Every SYSTEM_WATCHDOG_INTERVAL (300s = 5min).
|
||||
# All 18 checks independently toggleable per host in master_host*.conf.
|
||||
#
|
||||
# Tier 1 CRITICAL — bypass ALL strikes, reboot immediately:
|
||||
@@ -664,7 +664,7 @@
|
||||
# bash /mnt/user/appdata/unraid_scripts/unRAID_Essentials/system_watchdog.sh --dry-run
|
||||
|
||||
# inotify_tuning.sh — raise Linux inotify kernel limits at array start
|
||||
# Called by array_start.sh FIRST — must run before containers start (they inherit limits).
|
||||
# Called by array_started.sh FIRST — must run before containers start (they inherit limits).
|
||||
# Settings reset on each reboot — script reapplies on every array start. Idempotent.
|
||||
#
|
||||
# Limits set:
|
||||
@@ -679,7 +679,7 @@
|
||||
# bash /mnt/user/appdata/unraid_scripts/unRAID_Essentials/inotify_tuning.sh
|
||||
|
||||
# php_fpm_max_children.sh — set PHP-FPM pm.max_children at array start
|
||||
# Called by array_start.sh. Default is 4-8 workers — inadequate for a busy multi-user server.
|
||||
# Called by array_started.sh. Default is 4-8 workers — inadequate for a busy multi-user server.
|
||||
# Sets PHP_MAX_CHILDREN (250). 250 × ~2MB idle = ~500MB. Acceptable on 64GB+.
|
||||
# Symptom of saturation: WebGUI slow, settings saves hang, container UI starts timeout.
|
||||
# Resets on each reboot — reapplied at array start. Idempotent: silent when already correct.
|
||||
@@ -688,7 +688,7 @@
|
||||
# bash /mnt/user/appdata/unraid_scripts/unRAID_Essentials/php_fpm_max_children.sh
|
||||
|
||||
# docker_syslog_filter.sh — suppress Docker veth/docker0 interface log noise
|
||||
# Called by array_start.sh before containers start. Creates rsyslog drop rule.
|
||||
# Called by array_started.sh before containers start. Creates rsyslog drop rule.
|
||||
# Without this: 50+ containers at array start = 200-400 lines of kernel veth messages.
|
||||
# Real events (mount failures, permission errors) are invisible in that noise.
|
||||
# Idempotent: compares expected filter content exactly — only writes when changed.
|
||||
@@ -895,7 +895,7 @@
|
||||
# ──────────────────────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
# ramdisk_setup.sh — create tmpfs ramdisk and transcode symlink at array start
|
||||
# Called by array_start.sh. MUST run before Emby starts.
|
||||
# Called by array_started.sh. MUST run before Emby starts.
|
||||
# Idempotent: if ramdisk already mounted → report status and exit cleanly, do not remount.
|
||||
#
|
||||
# Creates:
|
||||
@@ -1198,7 +1198,7 @@
|
||||
# ==============================================================================================
|
||||
#
|
||||
# At Startup of Array:
|
||||
# Orchestrators/array_start.sh (single entry — handles everything)
|
||||
# Orchestrators/array_started.sh (single entry — handles everything)
|
||||
#
|
||||
# */3 * * * * every 3 minutes:
|
||||
# Orchestrators/transcode_management.sh
|
||||
|
||||
Reference in New Issue
Block a user