48 lines
1.4 KiB
Bash
48 lines
1.4 KiB
Bash
#!/bin/bash
|
|
|
|
echo "🚀 Iniciando o processo de build..."
|
|
|
|
# Passo 1: Build do Frontend (React)
|
|
echo "📦 Instalando dependências do frontend..."
|
|
cd frontend
|
|
npm install --legacy-peer-deps
|
|
|
|
echo "🔨 Construindo o frontend para produção..."
|
|
npx tsc && npm run build
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "❌ Falha no build do frontend. Abortando."
|
|
exit 1
|
|
fi
|
|
|
|
cd ..
|
|
|
|
# Passo 2: Build do Backend (Go)
|
|
echo "🔨 Compilando o backend com arquivos embedados..."
|
|
echo "📁 Copiando artefatos do frontend para backend/dist..."
|
|
rm -rf backend/dist
|
|
mkdir -p backend/dist
|
|
cp -r frontend/dist/* backend/dist/
|
|
cd backend
|
|
go mod tidy
|
|
go build -ldflags="-X main.version=2.0.0" -o ../web-tail-pro ./cmd/server/main.go
|
|
cd ..
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "❌ Falha na compilação do backend. Abortando."
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ Build concluído com sucesso!"
|
|
echo "➡️ Execute o binário gerado:"
|
|
echo " ./web-tail-pro [opções] backend/logs/app.log backend/logs/access.log"
|
|
echo ""
|
|
echo "Exemplos:"
|
|
echo " ./web-tail-pro -port :9090 -password 's3nh4' backend/logs/*.log"
|
|
echo " ./web-tail-pro -password 's3nh4' backend/logs/app.log"
|
|
echo " ./web-tail-pro -port 1234 backend/logs/*.log"
|
|
echo ""
|
|
echo "Variáveis de ambiente disponíveis:"
|
|
echo " PORT, USERNAME, PASSWORD, LOG_LEVEL, LOG_FORMAT"
|
|
echo " RATE_LIMIT_ENABLED, RATE_LIMIT_RPS, CORS_ORIGINS"
|
|
echo " TLS_ENABLED, TLS_CERT_FILE, TLS_KEY_FILE" |