492c8fdd87
- auth/auth_v2.py: JWT login/refresh/logout/me + bcrypt + tenant_id/role/tier claims - auth/admin_users.py: /api/admin/users CRUD + invite/role/suspend + bulk CSV - auth/gdpr.py: cookie consent + Art.20 export + Art.17 erasure + admin queue - auth/seed_demo.py: 3 demo tenants + 4 users (damir@pgz.hr / PGZ2026!) - Removed legacy /api/auth/login + /api/auth/me from pgz_sport_api.py - Wired auth/admin/gdpr routers into FastAPI 5/5 live curl tests pass: damir@pgz.hr login → JWT with tenant_id=1, role=pgz_admin, tier=0
102 lines
5.0 KiB
Bash
Executable File
102 lines
5.0 KiB
Bash
Executable File
#!/bin/bash
|
|
# CC SWARM MONITOR v2 — radni tiled prikaz
|
|
|
|
case "${1:-help}" in
|
|
view|loop)
|
|
while true; do
|
|
clear
|
|
echo "╔════════════════════════════════════════════════════════════════════╗"
|
|
echo "║ PGŽ SPORT — CC SWARM ($(date '+%Y-%m-%d %H:%M:%S')) ║"
|
|
echo "╚════════════════════════════════════════════════════════════════════╝"
|
|
for s in cc1 cc2 cc3 cc4 cc5 cc6; do
|
|
echo
|
|
echo "─── [$s] ───────────────────────────────────────────────────────"
|
|
tmux capture-pane -t ${s}:0 -p 2>/dev/null | grep -v "^─*$" | grep -v "^$" | tail -5 | sed 's/^/ /'
|
|
done
|
|
echo
|
|
echo "════════════════════════════════════════════════════════════════════"
|
|
echo "Git: $(cd /opt/pgz-sport && git log --oneline -1 2>/dev/null)"
|
|
echo "Refresh 30s | Ctrl+C izlaz"
|
|
echo "════════════════════════════════════════════════════════════════════"
|
|
sleep 30
|
|
done
|
|
;;
|
|
|
|
tiled|tile)
|
|
# Stvori SAMO display sesiju koja gleda svih 6 odjednom
|
|
tmux kill-session -t swarm-view 2>/dev/null
|
|
|
|
# Nova sesija
|
|
tmux new-session -d -s swarm-view -x 240 -y 60
|
|
|
|
# Koristi watch da gleda capture-pane svakih 2s — to RADI bez nestanja
|
|
tmux send-keys -t swarm-view:0 'watch -n 2 -t "echo === CC1 ===; tmux capture-pane -t cc1:0 -p | tail -8"' Enter
|
|
|
|
# Split na 6 panela
|
|
tmux split-window -h -t swarm-view:0
|
|
tmux send-keys -t swarm-view:0.1 'watch -n 2 -t "echo === CC2 ===; tmux capture-pane -t cc2:0 -p | tail -8"' Enter
|
|
|
|
tmux split-window -v -t swarm-view:0.0
|
|
tmux send-keys -t swarm-view:0.2 'watch -n 2 -t "echo === CC3 ===; tmux capture-pane -t cc3:0 -p | tail -8"' Enter
|
|
|
|
tmux split-window -v -t swarm-view:0.1
|
|
tmux send-keys -t swarm-view:0.3 'watch -n 2 -t "echo === CC4 ===; tmux capture-pane -t cc4:0 -p | tail -8"' Enter
|
|
|
|
tmux split-window -v -t swarm-view:0.0
|
|
tmux send-keys -t swarm-view:0.4 'watch -n 2 -t "echo === CC5 ===; tmux capture-pane -t cc5:0 -p | tail -8"' Enter
|
|
|
|
tmux split-window -v -t swarm-view:0.1
|
|
tmux send-keys -t swarm-view:0.5 'watch -n 2 -t "echo === CC6 ===; tmux capture-pane -t cc6:0 -p | tail -8"' Enter
|
|
|
|
tmux select-layout -t swarm-view tiled
|
|
|
|
echo "═════════════════════════════════════════════════"
|
|
echo " Sesija swarm-view kreirana s 6 panela"
|
|
echo "═════════════════════════════════════════════════"
|
|
echo " Pogledaj: tmux attach -t swarm-view"
|
|
echo " Detach: Ctrl+B pa D"
|
|
echo "═════════════════════════════════════════════════"
|
|
|
|
# Auto-attach
|
|
tmux attach -t swarm-view
|
|
;;
|
|
|
|
status|s)
|
|
for s in cc1 cc2 cc3 cc4 cc5 cc6; do
|
|
echo "=== $s ==="
|
|
tmux capture-pane -t ${s}:0 -p 2>/dev/null | tail -8
|
|
echo
|
|
done
|
|
;;
|
|
|
|
git|log)
|
|
cd /opt/pgz-sport
|
|
echo "═══ COMMITS ═══"
|
|
git log --oneline -20
|
|
;;
|
|
|
|
cc1|1) tmux attach -t cc1 ;;
|
|
cc2|2) tmux attach -t cc2 ;;
|
|
cc3|3) tmux attach -t cc3 ;;
|
|
cc4|4) tmux attach -t cc4 ;;
|
|
cc5|5) tmux attach -t cc5 ;;
|
|
cc6|6) tmux attach -t cc6 ;;
|
|
|
|
*)
|
|
cat << 'HELP'
|
|
═══════════════════════════════════════════════════════════════════════
|
|
CC SWARM — PGŽ SPORT
|
|
═══════════════════════════════════════════════════════════════════════
|
|
bash swarm.sh tiled 6 panela live prikaz (ATTACHA ODMAH)
|
|
bash swarm.sh view Auto-refresh 30s (cijela slika u 1 ekranu)
|
|
bash swarm.sh status Brzi snapshot
|
|
bash swarm.sh git Git log
|
|
bash swarm.sh cc1..6 Attach na specifični agent
|
|
|
|
Detach iz attached: Ctrl+B pa D
|
|
Switch tmux panel: Ctrl+B pa strijelica
|
|
═══════════════════════════════════════════════════════════════════════
|
|
HELP
|
|
;;
|
|
esac
|