Spaces:
Paused
Paused
File size: 3,579 Bytes
fb56537 cf55b31 f332df1 cf55b31 2eaa181 f332df1 6bcb6a7 0086458 0b55551 0086458 cf55b31 2c003aa cf55b31 fb56537 cf55b31 fb56537 cf55b31 fb56537 cf55b31 fb56537 cf55b31 fb56537 cf55b31 c9ef50b cf55b31 fb56537 e5e987e a2f1e88 cf55b31 1f32e37 c9ef50b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 |
#!/bin/bash
# ==============================================================================
# start.sh v4.0 - Verificador de Integridade e Orquestrador de Inicialização
# ==============================================================================
#
# Este script verifica se os repositórios essenciais, instalados durante o build
# do Docker, existem e são válidos. Somente após a verificação, ele prossegue
# para o download dos modelos e a inicialização da aplicação.
#
# ==============================================================================
#set -e
pip -v install flash-attn>=2.8.0 --no-build-isolation --no-cache-dir
# Define o nome do pacote para facilitar a leitura
PACKAGE_NAME="diffusers-aduc-sdr"
GIT_REPO_URL="git+https://github.com/carlex22/diffusers-aduc-sdr.git"
echo "======================================================================"
echo "ADUC-SDR: Verificando e atualizando o fork $PACKAGE_NAME..."
echo "======================================================================"
# Força a desinstalação de qualquer versão existente para evitar conflitos
pip uninstall -y $PACKAGE_NAME
# Instala a versão mais recente diretamente do branch 'main' do seu repositório
# --no-cache-dir: Garante que o pip não use pacotes em cache
# --upgrade: Garante que está pegando a versão mais recente
pip -q install --no-cache-dir --upgrade $GIT_REPO_URL
echo ""
echo "======================================================================"
echo "$PACKAGE_NAME instalado/atualizado com sucesso."
echo "Iniciando a aplicação Gradio..."
echo "======================================================================"
echo ""
echo "🚀 Iniciando ADUC-SDR (Ambiente Pré-compilado)..."
# --- Etapa 1: Verificação da Integridade dos Repositórios ---
echo "----------------------------------------------------------------------"
echo "🔍 Verificando a integridade das instalações do Docker..."
# Lista de diretórios dos repositórios que devem existir
REPOS_TO_CHECK=(
"/app/LTX-Video"
"/app/Wan2.2"
#"/app/SeedVR"
#"/app/MMAudio"
)
# Flag para rastrear se tudo está correto
ALL_REPOS_OK=true
for repo_dir in "${REPOS_TO_CHECK[@]}"; do
# Verifica se o diretório do repositório existe
if [ -d "$repo_dir" ]; then
echo " [✅ OK] Repositório encontrado: $repo_dir"
else
echo " [❌ ERRO] Repositório CRÍTICO não encontrado: $repo_dir"
echo " -> Isso indica uma falha durante o 'docker build'."
ALL_REPOS_OK=false
fi
done
# Se qualquer verificação falhou, o script para com uma mensagem de erro clara.
if [ "$ALL_REPOS_OK" = false ]; then
echo "----------------------------------------------------------------------"
echo "🔥 Falha na verificação de integridade! A aplicação não pode iniciar."
echo " Por favor, verifique os logs de build do Docker para encontrar a causa do erro na instalação."
exit 1
fi
echo "✅ Verificação de integridade concluída com sucesso. Todos os repositórios estão presentes."
echo "----------------------------------------------------------------------"
# --- Etapa 2: Baixar os Modelos Essenciais ---
echo "📦 Verificando e baixando os modelos de IA..."
# O script python cuidará da lógica de verificar se o download é necessário
python3 download_models.py
echo "✅ Modelos prontos."
# --- Etapa 3: Iniciar a Aplicação Principal ---
echo "🎬 Iniciando a aplicação ($1)..."
echo "🚀 Iniciando app.py..."
python3 -d /app/app_wan.py --listen --port ${PORT:-7860} |