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
87 lines
2.4 KiB
Markdown
87 lines
2.4 KiB
Markdown
# 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:
|
|
|
|
```bash
|
|
# 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:
|
|
1. **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
|
|
|
|
2. **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
|
|
|
|
1. Editar código
|
|
2. `cd backend && ./deploy.sh` ou `cd frontend && ./deploy.sh`
|
|
3. Testar em https://webmoney.cnxifly.com
|
|
4. Se OK: `VERSION++`, atualizar CHANGELOG.md
|
|
5. 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.
|
|
|
|
```bash
|
|
# 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.
|