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}