#!/bin/bash # Script de deploy automático para Vercel # Uso: ./deploy.sh [mensagem do commit] echo "========================================" echo " TrackSteel - Deploy Automático" echo "========================================" echo # Cores para output RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # No Color # Função para exibir erro e sair error_exit() { echo -e "${RED}Erro: $1${NC}" exit 1 } # Função para exibir sucesso success_msg() { echo -e "${GREEN}✓ $1${NC}" } # Função para exibir info info_msg() { echo -e "${BLUE}ℹ $1${NC}" } # Função para exibir aviso warning_msg() { echo -e "${YELLOW}⚠ $1${NC}" } # Verifica se o Vercel CLI está instalado if ! command -v vercel &> /dev/null; then warning_msg "Vercel CLI não encontrado. Instalando..." npm install -g vercel if [ $? -ne 0 ]; then error_exit "Falha ao instalar Vercel CLI" fi success_msg "Vercel CLI instalado com sucesso" fi # Executa o script de sync primeiro info_msg "Sincronizando com GitHub..." ./sync.sh "$1" if [ $? -ne 0 ]; then error_exit "Falha na sincronização com GitHub" fi echo info_msg "Iniciando build de produção..." npm run build if [ $? -ne 0 ]; then error_exit "Falha no build de produção" fi echo info_msg "Fazendo deploy no Vercel..." vercel --prod if [ $? -ne 0 ]; then error_exit "Falha no deploy do Vercel" fi echo success_msg "Deploy concluído com sucesso!" success_msg "Código sincronizado: https://github.com/Reifonas/WebsiteTS.git" success_msg "Site disponível no Vercel" echo info_msg "Para ver o status do deploy:" echo "vercel ls" echo