webmoney/.github/copilot-instructions.md
2025-12-16 10:15:01 +00:00

2.5 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:

  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++ (incrementar versão)
    • Atualizar CHANGELOG.md (documentar mudanças)
    • Atualizar README.md (se necessário - features, requisitos, etc.)
  5. Commit e push

Estrutura do Servidor

/var/www/webmoney/
├── backend/          # Laravel (Nginx → PHP-FPM)
└── frontend/
    └── dist/         # React build (Nginx root)

Credenciais

🔑 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.