ASTAROTH0405 commited on
Commit
4e621fb
·
verified ·
1 Parent(s): 0d3e20c

Update start.sh

Browse files
Files changed (1) hide show
  1. start.sh +8 -10
start.sh CHANGED
@@ -20,20 +20,18 @@ persist_and_link() {
20
  echo "Procesando persistencia: $CONTAINER_DIR -> $PERSIST_DIR"
21
 
22
  # Si no existe en el volumen /data, realizamos copia inicial
23
- if; then
24
  echo " ➕ Copia inicial de $CONTAINER_DIR -> $PERSIST_DIR..."
25
  mkdir -p "$(dirname "$PERSIST_DIR")"
26
- if; then
27
  cp -a "$CONTAINER_DIR" "$PERSIST_DIR"
28
  else
29
  mkdir -p "$PERSIST_DIR"
30
  fi
31
  else
32
- # Si ya existe, mezclamos los nuevos archivos de la imagen sin clobber (no-overwrite)
33
- # Esto previene que las actualizaciones de la imagen de Docker borren tus paquetes personalizados,
34
- # pero permite que nuevas librerías oficiales añadidas por el desarrollador se importen de forma transparente.
35
  echo " 🔄 Sincronizando actualizaciones del contenedor con volumen persistente..."
36
- if; then
37
  cp -an "$CONTAINER_DIR"/. "$PERSIST_DIR/" 2>/dev/null || true
38
  fi
39
  fi
@@ -59,7 +57,7 @@ persist_and_link "/opt/venv" "$DATA_VENV_EXEC"
59
  persist_and_link "/home/agent" "$DATA_HOME"
60
 
61
  # 5. Sincronizar el repositorio de Agent Zero de forma segura contra conflictos de Git
62
- if; then
63
  echo "📦 Clonando código base de Agent Zero por primera vez..."
64
  git clone https://github.com/agent0ai/agent-zero.git "$DATA_REPO_DIR"
65
  else
@@ -68,7 +66,7 @@ else
68
  # Salvaguardar cualquier modificación local hecha por el agente en caliente para evitar dirty tree
69
  git -C "$DATA_REPO_DIR" stash push -u -m "a0-auto-stash-startup" 2>/dev/null || true
70
 
71
- if! git -C "$DATA_REPO_DIR" pull origin main; then
72
  echo "⚠️ Advertencia: Conflicto severo en git pull. Restableciendo repositorio para mantener estabilidad..."
73
  git -C "$DATA_REPO_DIR" reset --hard origin/main
74
  fi
@@ -83,7 +81,7 @@ ln -sfn "$DATA_REPO_DIR" /git/agent-zero
83
  # Sincronizar el script del bot de Telegram para asegurar que use el venv persistente
84
  if [ -f /git/agent-zero/plugins/_telegram_integration/helpers/dependencies.py ]; then
85
  sed -i 's|sys.executable,|"/opt/venv-a0/bin/python",|' \
86
- /git/agent-zero/plugins/_telegram_integration/helpers/dependencies.py 2>/dev/null || true
87
  fi
88
 
89
  # Diagnóstico de almacenamiento
@@ -91,7 +89,7 @@ echo "📊 Estado de ocupación en volumen persistente /data:"
91
  du -sh /data/ 2>/dev/null || echo "No se pudo calcular la ocupación de disco"
92
  echo "=========================================================="
93
 
94
- # 6. Lanzar la interfaz web de Agent Zero directamente (sin setpriv redundante)
95
  cd /git/agent-zero
96
  PORT=${PORT:-7860}
97
  echo "🚀 Iniciando servidor de Agent Zero en el puerto $PORT..."
 
20
  echo "Procesando persistencia: $CONTAINER_DIR -> $PERSIST_DIR"
21
 
22
  # Si no existe en el volumen /data, realizamos copia inicial
23
+ if [ ! -d "$PERSIST_DIR" ]; then
24
  echo " ➕ Copia inicial de $CONTAINER_DIR -> $PERSIST_DIR..."
25
  mkdir -p "$(dirname "$PERSIST_DIR")"
26
+ if [ -d "$CONTAINER_DIR" ]; then
27
  cp -a "$CONTAINER_DIR" "$PERSIST_DIR"
28
  else
29
  mkdir -p "$PERSIST_DIR"
30
  fi
31
  else
32
+ # Si ya existe, mezclamos los nuevos archivos de la imagen sin sobrescribir (no-clobber)
 
 
33
  echo " 🔄 Sincronizando actualizaciones del contenedor con volumen persistente..."
34
+ if [ -d "$CONTAINER_DIR" ]; then
35
  cp -an "$CONTAINER_DIR"/. "$PERSIST_DIR/" 2>/dev/null || true
36
  fi
37
  fi
 
57
  persist_and_link "/home/agent" "$DATA_HOME"
58
 
59
  # 5. Sincronizar el repositorio de Agent Zero de forma segura contra conflictos de Git
60
+ if [ ! -d "$DATA_REPO_DIR/.git" ]; then
61
  echo "📦 Clonando código base de Agent Zero por primera vez..."
62
  git clone https://github.com/agent0ai/agent-zero.git "$DATA_REPO_DIR"
63
  else
 
66
  # Salvaguardar cualquier modificación local hecha por el agente en caliente para evitar dirty tree
67
  git -C "$DATA_REPO_DIR" stash push -u -m "a0-auto-stash-startup" 2>/dev/null || true
68
 
69
+ if ! git -C "$DATA_REPO_DIR" pull origin main; then
70
  echo "⚠️ Advertencia: Conflicto severo en git pull. Restableciendo repositorio para mantener estabilidad..."
71
  git -C "$DATA_REPO_DIR" reset --hard origin/main
72
  fi
 
81
  # Sincronizar el script del bot de Telegram para asegurar que use el venv persistente
82
  if [ -f /git/agent-zero/plugins/_telegram_integration/helpers/dependencies.py ]; then
83
  sed -i 's|sys.executable,|"/opt/venv-a0/bin/python",|' \
84
+ /git/agent-zero/plugins/_telegram_integration/helpers/dependencies.py 2>/dev/null || true
85
  fi
86
 
87
  # Diagnóstico de almacenamiento
 
89
  du -sh /data/ 2>/dev/null || echo "No se pudo calcular la ocupación de disco"
90
  echo "=========================================================="
91
 
92
+ # 6. Lanzar la interfaz web de Agent Zero directamente (sin setpriv redundante porque ya somos usuario agent)
93
  cd /git/agent-zero
94
  PORT=${PORT:-7860}
95
  echo "🚀 Iniciando servidor de Agent Zero en el puerto $PORT..."