#!/usr/bin/env bash
# VeedonAI Edge — سحب أحدث الوحدات من مجلد التوزيع وإعادة التشغيل.
# يُستدعى يومياً من veedonai-update.timer، أو يدوياً: /opt/veedonai/update.sh
set -euo pipefail

DIR="${VEEDON_DIR:-/opt/veedonai}"
[ -f "$DIR/.env" ] && set -a && . "$DIR/.env" && set +a
DIST_URL="${VEEDON_DIST_URL:-https://veedon.ai/dist}"

say() { echo -e "\033[1;36m[VeedonAI-update]\033[0m $*"; }

NEW="$(curl -fsSL "$DIST_URL/VERSION" 2>/dev/null || echo unknown)"
OLD="$(cat "$DIR/VERSION" 2>/dev/null || echo none)"
say "الإصدار الحالي: $OLD — المتاح: $NEW"

# اسحب أحدث compose والوحدات دائماً (يشمل تحديث تعريفات الوحدات)
curl -fsSL "$DIST_URL/veedonai/docker-compose.yml" -o "$DIR/docker-compose.yml"
curl -fsSL "$DIST_URL/update.sh" -o "$DIR/update.sh.new" && mv "$DIR/update.sh.new" "$DIR/update.sh" && chmod +x "$DIR/update.sh"
echo "$NEW" > "$DIR/VERSION"

cd "$DIR"
docker compose pull 2>/dev/null || true
docker compose up -d
docker image prune -f >/dev/null 2>&1 || true
say "اكتمل التحديث → $NEW ✅ (تحديث النماذج والإعدادات يتم تلقائياً OTA من السحابة)"
