#!/bin/bash

# Script para resolver problemas de timeout no deploy GitLab CI/CD

echo "🔧 Resolvendo problema de timeout no deploy..."

# 1. Cancelar o job atual (se possível)
echo "1. Para cancelar o job atual:"
echo "   - Acesse o GitLab: https://gitlab.com/waygest/gestao/-/pipelines"
echo "   - Clique no job que está travado"
echo "   - Clique em 'Cancel'"

# 2. Fazer commit da versão corrigida
echo ""
echo "2. Fazendo commit da versão corrigida do pipeline..."
git add .gitlab-ci.yml
git commit -m "fix: corrigir timeout no deploy de homologação

- Adicionar teste de conectividade FTP
- Upload em lotes menores
- Timeouts mais longos
- Melhor tratamento de erros"

# 3. Push para reiniciar o pipeline
echo ""
echo "3. Fazendo push para reiniciar o pipeline..."
git push origin homologacao

echo ""
echo "✅ Pipeline corrigido e reiniciado!"
echo ""
echo "📋 O que foi corrigido:"
echo "   - Teste de conectividade antes do upload"
echo "   - Upload em lotes menores (pastas separadas)"
echo "   - Timeouts aumentados (60s para upload, 30s para teste)"
echo "   - Melhor tratamento de erros"
echo "   - Upload de arquivos essenciais primeiro"
echo ""
echo "🚨 Se ainda der problema, use a versão de emergência:"
echo "   - Renomeie .gitlab-ci.yml para .gitlab-ci-backup.yml"
echo "   - Renomeie .gitlab-ci-emergency.yml para .gitlab-ci.yml"
echo "   - Faça commit e push"
