244 lines
5.0 KiB
Markdown
244 lines
5.0 KiB
Markdown
|
|
# ⚡ Migração Rápida: PointControl → NoIdle
|
|||
|
|
|
|||
|
|
## 🎯 Resumo Executivo
|
|||
|
|
|
|||
|
|
Seu projeto mudou de **PointControl** para **NoIdle**, mas os arquivos e código ainda usam "pointcontrol" em vários lugares. Isso cria confusão e desorganização.
|
|||
|
|
|
|||
|
|
**Solução:** Script automatizado que renomeia tudo em 5 minutos! ⏱️
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🚀 Migração em 3 Passos
|
|||
|
|
|
|||
|
|
### 1️⃣ **Verificar o que vai mudar**
|
|||
|
|
```bash
|
|||
|
|
# Ver arquivos que serão afetados
|
|||
|
|
cd /var/www/pointcontrol
|
|||
|
|
grep -r "pointcontrol" . --include="*.js" --include="*.json" --include="*.md" | wc -l
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2️⃣ **Executar a migração**
|
|||
|
|
```bash
|
|||
|
|
sudo bash /var/www/pointcontrol/migrate_to_noidle.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 3️⃣ **Verificar resultado**
|
|||
|
|
```bash
|
|||
|
|
pm2 list
|
|||
|
|
curl http://localhost:3005/api/health
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📊 O Que Vai Ser Mudado
|
|||
|
|
|
|||
|
|
| Item | Antes | Depois |
|
|||
|
|
|------|-------|--------|
|
|||
|
|
| **Pasta** | `/var/www/pointcontrol` | `/var/www/noidle` |
|
|||
|
|
| **PM2** | `pointcontrol-api` | `noidle-api` |
|
|||
|
|
| **Backend** | `"name": "pointcontrol-api"` | `"name": "noidle-api"` |
|
|||
|
|
| **Frontend** | `"name": "pointcontrol-frontend"` | `"name": "noidle-frontend"` |
|
|||
|
|
| **Código** | `PointControl` | `NoIdle` |
|
|||
|
|
| **Logs** | `console.log('PointControl API')` | `console.log('NoIdle API')` |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ✅ O Que o Script Faz
|
|||
|
|
|
|||
|
|
1. ✅ **Backup automático** (salvo em `/tmp`)
|
|||
|
|
2. ✅ **Para serviços** (PM2)
|
|||
|
|
3. ✅ **Renomeia pasta** (`pointcontrol` → `noidle`)
|
|||
|
|
4. ✅ **Atualiza package.json** (backend e frontend)
|
|||
|
|
5. ✅ **Atualiza código** (todas as referências)
|
|||
|
|
6. ✅ **Atualiza documentação** (arquivos .md)
|
|||
|
|
7. ✅ **Recria PM2** com novo nome
|
|||
|
|
8. ✅ **Verifica funcionamento** (testes automáticos)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🎬 Executar AGORA
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd /var/www/pointcontrol
|
|||
|
|
sudo bash migrate_to_noidle.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**Tempo estimado:** 5 minutos ⏱️
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ⚠️ Importante
|
|||
|
|
|
|||
|
|
### ✅ Não Precisa Alterar:
|
|||
|
|
|
|||
|
|
- ✅ **Banco de dados** (continua igual)
|
|||
|
|
- ✅ **URLs externas** (`admin.noidle.tech` já está certo)
|
|||
|
|
- ✅ **Certificados SSL** (já estão corretos)
|
|||
|
|
- ✅ **Chaves de ativação** (continuam funcionando)
|
|||
|
|
|
|||
|
|
### ⚠️ Verificar Depois:
|
|||
|
|
|
|||
|
|
- Nginx config (se tiver path hardcoded)
|
|||
|
|
- Cliente Windows (se API_URL estiver hardcoded)
|
|||
|
|
- Variáveis de ambiente
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🔄 Rollback (Se der problema)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Parar novo serviço
|
|||
|
|
pm2 stop noidle-api
|
|||
|
|
pm2 delete noidle-api
|
|||
|
|
|
|||
|
|
# Restaurar pasta
|
|||
|
|
cd /var/www
|
|||
|
|
mv noidle pointcontrol
|
|||
|
|
|
|||
|
|
# Restaurar PM2
|
|||
|
|
cd pointcontrol/backend
|
|||
|
|
pm2 start server.js --name pointcontrol-api
|
|||
|
|
pm2 save
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📝 Após a Migração
|
|||
|
|
|
|||
|
|
### 1. Atualizar Git
|
|||
|
|
```bash
|
|||
|
|
cd /var/www/noidle
|
|||
|
|
git add .
|
|||
|
|
git commit -m "refactor: Migração completa de PointControl para NoIdle"
|
|||
|
|
git push
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2. Atualizar Nginx (se necessário)
|
|||
|
|
```bash
|
|||
|
|
sudo nano /etc/nginx/sites-available/admin.noidle.tech
|
|||
|
|
|
|||
|
|
# Verificar se tem paths antigos
|
|||
|
|
# /var/www/pointcontrol → /var/www/noidle
|
|||
|
|
|
|||
|
|
sudo nginx -t
|
|||
|
|
sudo systemctl reload nginx
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 3. Testar Tudo
|
|||
|
|
```bash
|
|||
|
|
# API
|
|||
|
|
curl http://localhost:3005/api/health
|
|||
|
|
|
|||
|
|
# Frontend
|
|||
|
|
curl https://admin.noidle.tech
|
|||
|
|
|
|||
|
|
# PM2
|
|||
|
|
pm2 list
|
|||
|
|
pm2 logs noidle-api
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🎯 Alternativa Manual (Se Preferir)
|
|||
|
|
|
|||
|
|
### Opção A: Fazer Tudo Manualmente
|
|||
|
|
Ver arquivo: `PLANO_MIGRACAO_NOIDLE.md`
|
|||
|
|
|
|||
|
|
### Opção B: Fazer em Etapas
|
|||
|
|
1. Apenas renomear pasta
|
|||
|
|
2. Apenas atualizar PM2
|
|||
|
|
3. Apenas atualizar código
|
|||
|
|
4. etc...
|
|||
|
|
|
|||
|
|
### Opção C: Manter Como Está
|
|||
|
|
- **NÃO recomendado** (mantém confusão)
|
|||
|
|
- Criar alias e documentar
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📊 Estatísticas
|
|||
|
|
|
|||
|
|
**Arquivos afetados:**
|
|||
|
|
- ~58 ocorrências em 21 arquivos
|
|||
|
|
- Backend: ~5 arquivos
|
|||
|
|
- Frontend: ~10 arquivos
|
|||
|
|
- Docs: ~15 arquivos
|
|||
|
|
|
|||
|
|
**Tempo necessário:**
|
|||
|
|
- Migração automática: ~5 minutos
|
|||
|
|
- Migração manual: ~30 minutos
|
|||
|
|
- Verificação e testes: ~10 minutos
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🆘 Precisa de Ajuda?
|
|||
|
|
|
|||
|
|
### Se o script falhar:
|
|||
|
|
|
|||
|
|
1. **Ver logs:**
|
|||
|
|
```bash
|
|||
|
|
pm2 logs noidle-api --lines 50
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
2. **Verificar backup:**
|
|||
|
|
```bash
|
|||
|
|
ls -lah /tmp/noidle_migration_backup_*
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
3. **Restaurar backup:**
|
|||
|
|
```bash
|
|||
|
|
# Ver seção de Rollback acima
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Contatos:
|
|||
|
|
|
|||
|
|
- Ver documentação completa: `PLANO_MIGRACAO_NOIDLE.md`
|
|||
|
|
- Logs do PM2: `pm2 logs noidle-api`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ✨ Benefícios Após Migração
|
|||
|
|
|
|||
|
|
✅ **Organização:** Tudo consistente e limpo
|
|||
|
|
✅ **Clareza:** Código fácil de entender
|
|||
|
|
✅ **Manutenção:** Sem confusão entre nomes
|
|||
|
|
✅ **Profissionalismo:** Nome correto em todo lugar
|
|||
|
|
✅ **Git:** Histórico limpo e organizado
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🎉 Resultado Final
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
/var/www/noidle/
|
|||
|
|
├── backend/
|
|||
|
|
│ ├── package.json (✅ "name": "noidle-api")
|
|||
|
|
│ └── server.js (✅ console.log('NoIdle API'))
|
|||
|
|
├── frontend/
|
|||
|
|
│ ├── package.json (✅ "name": "noidle-frontend")
|
|||
|
|
│ └── src/
|
|||
|
|
│ └── components/ (✅ Todos: NoIdle)
|
|||
|
|
└── *.md (✅ Documentação atualizada)
|
|||
|
|
|
|||
|
|
PM2: noidle-api (✅ online)
|
|||
|
|
Git: /var/www/noidle (✅ atualizado)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🚀 Executar AGORA
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd /var/www/pointcontrol
|
|||
|
|
sudo bash migrate_to_noidle.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**Tempo:** 5 minutos | **Backup:** Automático | **Rollback:** Disponível
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**Pronto para começar? Execute o comando acima! 🎯**
|
|||
|
|
|
|||
|
|
Data: 2025-11-16
|
|||
|
|
|