95 lines
3.4 KiB
Bash
Executable File
95 lines
3.4 KiB
Bash
Executable File
#!/bin/bash
|
|
# =============================================================================
|
|
# WEBMoney Frontend - Script de Deploy
|
|
# =============================================================================
|
|
# Este script faz build e deploy do frontend para o servidor de produção
|
|
# Uso: ./deploy.sh
|
|
# Repositório: https://git.cnxifly.com/marco/webmoney
|
|
# =============================================================================
|
|
|
|
set -e # Sair em caso de erro
|
|
|
|
# Configurações - CAMINHO CORRETO!
|
|
SERVER_USER="root"
|
|
SERVER_HOST="213.165.93.60"
|
|
SERVER_PASS="Master9354"
|
|
REMOTE_PATH="/var/www/webmoney/frontend/dist" # <<< IMPORTANTE: Sempre /dist
|
|
LOCAL_DIST="./dist"
|
|
PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
|
|
# Cores para output
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
NC='\033[0m' # No Color
|
|
|
|
echo -e "${BLUE}========================================${NC}"
|
|
echo -e "${BLUE} WEBMoney Frontend - Deploy Script ${NC}"
|
|
echo -e "${BLUE}========================================${NC}"
|
|
echo ""
|
|
|
|
# 1. Build
|
|
echo -e "${YELLOW}[1/4]${NC} Fazendo build do frontend..."
|
|
rm -rf dist
|
|
npm run build
|
|
|
|
if [ ! -d "$LOCAL_DIST" ]; then
|
|
echo -e "${RED}ERRO: Build falhou - pasta dist não encontrada${NC}"
|
|
exit 1
|
|
fi
|
|
|
|
echo -e "${GREEN}✓ Build concluído${NC}"
|
|
echo ""
|
|
|
|
# 2. Limpar diretório remoto
|
|
echo -e "${YELLOW}[2/4]${NC} Limpando diretório remoto..."
|
|
sshpass -p "$SERVER_PASS" ssh -o StrictHostKeyChecking=no "$SERVER_USER@$SERVER_HOST" \
|
|
"rm -rf $REMOTE_PATH/* && echo 'Diretório limpo'"
|
|
|
|
echo -e "${GREEN}✓ Diretório remoto limpo${NC}"
|
|
echo ""
|
|
|
|
# 3. Enviar arquivos para o caminho CORRETO
|
|
echo -e "${YELLOW}[3/4]${NC} Enviando arquivos para $REMOTE_PATH ..."
|
|
sshpass -p "$SERVER_PASS" scp -o StrictHostKeyChecking=no -r $LOCAL_DIST/* \
|
|
"$SERVER_USER@$SERVER_HOST:$REMOTE_PATH/"
|
|
|
|
echo -e "${GREEN}✓ Arquivos enviados${NC}"
|
|
echo ""
|
|
|
|
# 4. Verificar deploy
|
|
echo -e "${YELLOW}[4/4]${NC} Verificando deploy..."
|
|
REMOTE_FILES=$(sshpass -p "$SERVER_PASS" ssh -o StrictHostKeyChecking=no "$SERVER_USER@$SERVER_HOST" \
|
|
"ls -la $REMOTE_PATH/")
|
|
|
|
echo "$REMOTE_FILES"
|
|
echo ""
|
|
|
|
# Verificar se index.html existe
|
|
if sshpass -p "$SERVER_PASS" ssh -o StrictHostKeyChecking=no "$SERVER_USER@$SERVER_HOST" \
|
|
"test -f $REMOTE_PATH/index.html"; then
|
|
echo -e "${GREEN}========================================${NC}"
|
|
echo -e "${GREEN} ✓ Deploy concluído com sucesso! ${NC}"
|
|
echo -e "${GREEN}========================================${NC}"
|
|
echo ""
|
|
echo -e "Acesse: ${BLUE}https://webmoney.cnxifly.com${NC}"
|
|
echo ""
|
|
|
|
# Lembrete de commit
|
|
echo -e "${BLUE}════════════════════════════════════════${NC}"
|
|
echo -e "${YELLOW}📝 Não esqueça de fazer commit:${NC}"
|
|
echo -e ""
|
|
echo -e " cd $PROJECT_ROOT"
|
|
echo -e " git add -A && git commit -m \"deploy: frontend\" && git push gitea main"
|
|
echo -e ""
|
|
echo -e "${BLUE} Repositório: ${NC}https://git.cnxifly.com/marco/webmoney"
|
|
echo -e "${BLUE}════════════════════════════════════════${NC}"
|
|
echo ""
|
|
else
|
|
echo -e "${RED}========================================${NC}"
|
|
echo -e "${RED} ✗ ERRO: index.html não encontrado ${NC}"
|
|
echo -e "${RED}========================================${NC}"
|
|
exit 1
|
|
fi
|