- Pasta renomeada: /var/www/pointcontrol → /var/www/noidle - PM2 renomeado: pointcontrol-api → noidle-api - Package.json backend atualizado - Package.json frontend atualizado - Todas as referências de código atualizadas - Documentação atualizada - Script de migração executado com sucesso - Backup criado em /tmp/ - Sistema testado e funcionando Resolução: Organização completa da estrutura bagunçada
244 lines
4.8 KiB
Markdown
244 lines
4.8 KiB
Markdown
# ⚡ Migração Rápida: NoIdle → NoIdle
|
||
|
||
## 🎯 Resumo Executivo
|
||
|
||
Seu projeto mudou de **NoIdle** para **NoIdle**, mas os arquivos e código ainda usam "noidle" 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/noidle
|
||
grep -r "noidle" . --include="*.js" --include="*.json" --include="*.md" | wc -l
|
||
```
|
||
|
||
### 2️⃣ **Executar a migração**
|
||
```bash
|
||
sudo bash /var/www/noidle/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/noidle` | `/var/www/noidle` |
|
||
| **PM2** | `noidle-api` | `noidle-api` |
|
||
| **Backend** | `"name": "noidle-api"` | `"name": "noidle-api"` |
|
||
| **Frontend** | `"name": "noidle-frontend"` | `"name": "noidle-frontend"` |
|
||
| **Código** | `NoIdle` | `NoIdle` |
|
||
| **Logs** | `console.log('NoIdle 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** (`noidle` → `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/noidle
|
||
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 noidle
|
||
|
||
# Restaurar PM2
|
||
cd noidle/backend
|
||
pm2 start server.js --name noidle-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 NoIdle 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/noidle → /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/noidle
|
||
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
|
||
|