Updated framework

This commit is contained in:
2026-03-27 16:50:20 +00:00
parent 24c7a481c8
commit 4faf5d2b96
11 changed files with 994 additions and 398 deletions
+89 -18
View File
@@ -5,39 +5,110 @@ set -e
# ----------------------------------------------------------------------------------------------
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "$SCRIPT_DIR/../Master.conf"
source "$SCRIPT_DIR/../common.sh"
# Load central config
load_master_conf
# Parse CLI args (supports --dry-run)
parse_args "$@"
# Functions
# STATUS MODE
if [[ "$SHOW_STATUS" == true ]]; then
echo
echo "=================================================="
echo " ️ USER SCRIPTS STATUS"
echo "--------------------------------------------------"
echo " 🔍 Target: /tmp/user.scripts processes"
echo " 🧪 Dry Run: $DRY_RUN"
echo "=================================================="
exit 0
fi
# HEADER
echo
echo "============================================================"
echo " 🚀 USER SCRIPTS STOP STARTING"
echo "------------------------------------------------------------"
echo " 🔍 Target: User Scripts Plugin processes"
echo " 🧪 Dry Run: $DRY_RUN"
echo "============================================================"
log "️ Scanning for User Scripts processes"
# FUNCTIONS
get_user_script_pids() {
/usr/bin/ps -eo pid,cmd | grep "/tmp/user.scripts" | grep -v grep | awk '{print $1}'
}
stop_user_scripts() {
# Get PIDs of running user scripts
local pids
pids=$(/usr/bin/ps -eo pid,cmd | grep "/tmp/user.scripts" | grep -v grep | awk '{print $1}')
if [ -z "$pids" ]; then
echo "No running user scripts found."
local pids
pids=$(get_user_script_pids)
if [[ -z "$pids" ]]; then
info "🟢 No running User Scripts found"
return
fi
local count=0
for pid in $pids; do
if [ "$DRY_RUN" = true ]; then
echo "[DRY-RUN] Would kill user script with PID $pid"
if [[ "$DRY_RUN" == true ]]; then
warn "🧪 Would kill User Script PID $pid"
else
echo "Killing user script with PID $pid"
kill "$pid"
info "🟡 Killing User Script PID $pid"
if kill "$pid" 2>/dev/null; then
info "🟢 Killed PID $pid"
else
warn "🔴 Failed to kill PID $pid (may already be gone)"
fi
fi
count=$((count + 1))
done
echo "All user scripts stopped."
if [[ "$DRY_RUN" == true ]]; then
warn "🧪 Would stop $count User Script process(es)"
else
info "🟢 Process cleanup complete ($count process(es) targeted)"
fi
}
# MAIN
echo "==== User Scripts Stop Script Started: $(date) ===="
# EXECUTION
START_TIME=$(date +%s)
stop_user_scripts
stop_user_scripts
END_TIME=$(date +%s)
DURATION=$((END_TIME - START_TIME))
# SUMMARY
echo
echo "============================================================"
if [[ "$DRY_RUN" == true ]]; then
echo " 🟡 USER SCRIPTS SUMMARY"
echo "------------------------------------------------------------"
echo " 🔍 Status: 🟡 DRY RUN (no processes killed)"
echo " ⏱ Duration: ${DURATION}s"
else
local remaining
remaining=$(get_user_script_pids)
if [[ -z "$remaining" ]]; then
echo " 🟢 USER SCRIPTS SUMMARY"
echo "------------------------------------------------------------"
echo " 🔍 Status: 🟢 ALL PROCESSES STOPPED"
else
echo " 🟡 USER SCRIPTS SUMMARY"
echo "------------------------------------------------------------"
echo " 🔍 Status: 🟡 SOME PROCESSES MAY STILL BE RUNNING"
fi
echo " ⏱ Duration: ${DURATION}s"
fi
echo "============================================================"
info "️ User Scripts stop operation complete"