Added: - Gráfico de projeção de saldo com período ajustável (1-12 meses) - Endpoint GET /api/reports/projection-chart - Componente BalanceProjectionChart com Chart.js - Projeções baseadas em recorrências, passivos e transações agendadas - Tradução completa (pt-BR, en, es) Fixed: - Type casting para parâmetro months no endpoint - Query SQL simplificada sem exchange_rates - Ordem de execução das migrações - Permissões do bootstrap/cache (www-data) Changed: - Database reset completo (migrate:fresh) - Usuário recriado com novo token API - Deploy completo via scripts oficiais
2.4 KiB
2.4 KiB
GitHub Copilot Instructions
🚨 REGRA CRÍTICA DE DEPLOY
NUNCA envie arquivos manualmente com scp/rsync para o servidor.
Deploy Obrigatório
Sempre que precisar enviar código para produção, USE OS SCRIPTS:
# Para mudanças no BACKEND (PHP/Laravel)
cd /workspaces/webmoney/backend && ./deploy.sh
# Para mudanças no FRONTEND (React/JS)
cd /workspaces/webmoney/frontend && ./deploy.sh
Por que usar os scripts?
Os scripts de deploy:
-
Backend (deploy.sh):
- Sincroniza arquivos com rsync
- Instala dependências com composer
- Executa migrações
- Limpa e regenera cache
- Reinicia PHP-FPM
- Ajusta permissões
-
Frontend (deploy.sh):
- Faz build do React (npm run build)
- Envia para /var/www/webmoney/frontend/dist (não /frontend!)
- Verifica se deploy funcionou
Proibições
❌ scp arquivo root@213.165.93.60:/var/www/webmoney/...
❌ rsync arquivo root@213.165.93.60:/var/www/webmoney/...
❌ Copiar arquivos individuais manualmente
Workflow
- Editar código
cd backend && ./deploy.shoucd frontend && ./deploy.sh- Testar em https://webmoney.cnxifly.com
- Se OK:
VERSION++, atualizar CHANGELOG.md - Commit e push
Estrutura do Servidor
/var/www/webmoney/
├── backend/ # Laravel (Nginx → PHP-FPM)
└── frontend/
└── dist/ # React build (Nginx root)
Credenciais
- Servidor: root@213.165.93.60 (senha: Master9354)
- Banco: webmoney / M@ster9354
- Usuário WebMoney: marco@cnxifly.com / M@ster9354
🔑 Acesso SSH - SEMPRE usar sshpass
OBRIGATÓRIO: Sempre usar sshpass para comandos SSH/SCP/RSYNC.
# SSH para executar comandos
sshpass -p 'Master9354' ssh -o StrictHostKeyChecking=no root@213.165.93.60 "comando"
# Ver logs do Laravel
sshpass -p 'Master9354' ssh -o StrictHostKeyChecking=no root@213.165.93.60 "tail -50 /var/www/webmoney/backend/storage/logs/laravel.log"
# Executar tinker
sshpass -p 'Master9354' ssh -o StrictHostKeyChecking=no root@213.165.93.60 "cd /var/www/webmoney/backend && php artisan tinker --execute='codigo'"
# MySQL
sshpass -p 'Master9354' ssh -o StrictHostKeyChecking=no root@213.165.93.60 "mysql -u webmoney -p'M@ster9354' webmoney -e 'QUERY'"
❌ NUNCA usar ssh root@213.165.93.60 sem sshpass (vai travar esperando senha)
Documentação
Consulte .DIRETRIZES_DESENVOLVIMENTO_v5 para regras completas.