|
|
#!/bin/bash |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mkdir /data/logs |
|
|
LOG_FILE="/data/logs/session.log" |
|
|
|
|
|
|
|
|
if [ -f "$LOG_FILE" ] && [ -s "$LOG_FILE" ]; then |
|
|
echo "[STARTUP] Log da sessão anterior encontrado. Preparando para upload." |
|
|
|
|
|
|
|
|
TODAY=$(date +%Y-%m-%d) |
|
|
TIMESTAMP=$(date +%H-%M-%S) |
|
|
UPLOAD_FILENAME="log-${TIMESTAMP}.txt" |
|
|
export REPO_PATH="logs/${TODAY}/${UPLOAD_FILENAME}" |
|
|
|
|
|
|
|
|
TEMP_LOG_PATH="/data/previous_session.log" |
|
|
mv "$LOG_FILE" "$TEMP_LOG_PATH" |
|
|
|
|
|
echo "[STARTUP] Fazendo upload de '$TEMP_LOG_PATH' para o repositório em '$REPO_PATH'..." |
|
|
|
|
|
|
|
|
|
|
|
python - <<'PY' & |
|
|
import os |
|
|
import time |
|
|
from huggingface_hub import HfApi, HfFolder |
|
|
|
|
|
|
|
|
time.sleep(5) |
|
|
|
|
|
repo = os.environ.get("SELF_HF_REPO_ID", "eeuuia/Tmp") |
|
|
token = os.getenv("HF_TOKEN") |
|
|
log_to_upload = "/data/previous_session.log" |
|
|
repo_path = os.getenv("REPO_PATH",'logs/log.log') |
|
|
|
|
|
if not token: |
|
|
print("[UPLOAD_SCRIPT] AVISO: HF_TOKEN ausente; upload do log desabilitado.") |
|
|
|
|
|
if os.path.exists(log_to_upload): |
|
|
os.remove(log_to_upload) |
|
|
exit() |
|
|
|
|
|
if not repo_path: |
|
|
print("[UPLOAD_SCRIPT] ERRO: REPO_PATH não definido.") |
|
|
exit() |
|
|
|
|
|
try: |
|
|
print(f"[UPLOAD_SCRIPT] Iniciando upload para {repo}...") |
|
|
api = HfApi(token=token) |
|
|
api.upload_file( |
|
|
path_or_fileobj=log_to_upload, |
|
|
path_in_repo=repo_path, |
|
|
repo_id=repo, |
|
|
repo_type="model", |
|
|
) |
|
|
print(f"[UPLOAD_SCRIPT] Upload de log concluído com sucesso para: {repo_path}") |
|
|
finally: |
|
|
|
|
|
if os.path.exists(log_to_upload): |
|
|
os.remove(log_to_upload) |
|
|
print("[UPLOAD_SCRIPT] Arquivo de log temporário limpo.") |
|
|
PY |
|
|
|
|
|
else |
|
|
echo "[STARTUP] Nenhum log da sessão anterior encontrado. Iniciando com um log limpo." |
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
echo "[STARTUP] Iniciando a aplicação principal Gradio (app.py)..." |
|
|
|
|
|
|
|
|
python /app/setup.py |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
exec python /app/app.py |