Varaverk: arrange mode, folder management, rsync standalone, layout fixes

Scheduler UI:
- Arrange mode: drag scripts between orchs and reorder within arrays; right
  panel shows unassigned script pool; Save Arrangement commits to master.conf
- + Folder: named collapsible subfolders for Custom Scripts stored in schedule.json
- Rsync children: hide Run/Dry Run/Log/location when orch is ON; show standalone
  location + cron controls when orch is OFF; cron only fires when both filled
- Non-conf-managed children (transcode): toggles now show enabled when orch is on
- Right panel height sync: fix ResizeObserver feedback loop via align-self:flex-start
  on left panel and left.offsetHeight in vvFitRight
- How do I use this: updated to cover arrange, folders, rsync standalone, transcode

New API endpoints:
- board.php, clearlock.php, movescript.php, rawconf.php, readscript.php
- reorderarray.php, rsync_standalone.php, savefolders.php

run.php / dryrun.php: accept optional --location= arg for standalone rsync calls
This commit is contained in:
Gmer4Lfe
2026-05-25 21:46:12 -04:00
parent 6b30768853
commit 6078af0dbb
17 changed files with 2667 additions and 196 deletions
+8 -8
View File
@@ -16,7 +16,7 @@
#
# array_started.sh at array start — launches ALL startup scripts in order
# array_stopping.sh at array stop — graceful shutdown sequence
# watchdog_orchestrator.sh every minute — resource + docker + system watchdog
# watchdog_orchestrator.sh every 15 min — resource + docker + system watchdog
# transcode_management.sh every 7 min — cleanup then manager (order critical)
# critical_sync_maintenance.sh every 30 min — auth + Emby dirty sync + partnership
# intermediate_sync_maintenance.sh every 4 hours — arr library sync + artwork fetch
@@ -132,7 +132,7 @@
# fallback.sh [continuous] mutual fallback state machine
#
# NOTE: system_watchdog.sh and docker_watchdog.sh are no longer started by array_started.sh.
# They are now single-pass scripts called every minute by watchdog_orchestrator.sh (see below).
# They are now single-pass scripts called every 15 minutes by watchdog_orchestrator.sh (see below).
# Remove them from ARRAY_START_SCRIPTS in master.conf if present.
#
# bash /mnt/user/appdata/unraid_scripts/Orchestrators/array_started.sh
@@ -161,7 +161,7 @@
# ── WATCHDOG ORCHESTRATOR ─────────────────────────────────────────────────────────────────────
# Schedule: * * * * * (every minute)
# Schedule: */15 * * * * (every 15 minutes)
# Background: YES
#
# Runs the three-layer watchdog system in the correct sequence each cycle. Replaces the
@@ -178,9 +178,9 @@
# 4. stability_watchdog.sh reboot if all else failed — last line of defense
#
# Startup grace: no action until uptime >= WATCHDOG_STARTUP_GRACE (600s). Exits early
# so all three sub-scripts don't each log startup-grace skips on every minute.
# so all three sub-scripts don't each log startup-grace skips on every cycle.
# Overlap protection: acquire_lock() exits immediately if a prior cycle is still running —
# prevents pile-up when a restart attempt or daemon check takes longer than 60 seconds.
# prevents pile-up when a restart attempt or daemon check takes longer than 15 minutes.
#
# bash /mnt/user/appdata/unraid_scripts/Orchestrators/watchdog_orchestrator.sh
# bash /mnt/user/appdata/unraid_scripts/Orchestrators/watchdog_orchestrator.sh --dry-run
@@ -560,7 +560,7 @@
# ──────────────────────────────────────────────────────────────────────────────────────────────
# docker_watchdog.sh — two-tier container self-healing monitor (single-pass)
# Called every minute by watchdog_orchestrator.sh — NOT started by array_started.sh. Single-pass.
# Called every 15 minutes by watchdog_orchestrator.sh — NOT started by array_started.sh. Single-pass.
#
# Tier 1 — explicit per-container (configured in host*.conf):
# Memory hard limits: immediate restart when exceeded — no strikes, no waiting
@@ -814,7 +814,7 @@
# bash /mnt/user/appdata/unraid_scripts/unRAID_Essentials/docker_syslog_filter.sh
# webgui_watchdog.sh — WebGUI availability watchdog (called by system_watchdog via SYSTEM_WATCHDOG_SCRIPTS)
# Not scheduled directly — runs as part of the every-minute watchdog chain.
# Not scheduled directly — runs as part of the every-15-minute watchdog chain.
# Escalation: nginx → php-fpm → emhttp, each with recheck before proceeding to next level.
# bash /mnt/user/appdata/unraid_scripts/Watchdogs/System/webgui_watchdog.sh --dry-run
# bash /mnt/user/appdata/unraid_scripts/Watchdogs/System/webgui_watchdog.sh --status
@@ -1414,7 +1414,7 @@
# At Stopping of Array:
# Orchestrators/array_stopping.sh (single entry — graceful shutdown)
#
# * * * * * every minute:
# */15 * * * * every 15 minutes:
# Orchestrators/watchdog_orchestrator.sh
# └─ resource_watchdog → docker_watchdog → system_watchdog (storage/webgui/network) → stability_watchdog
#