webmoney/CONFIGURACION_LOCAL.md

160 lines
3.8 KiB
Markdown

# 🖥️ CONFIGURACION DEL AMBIENTE DE DESARROLLO LOCAL
**Sistema Operativo:** Windows
**Ultima actualizacion:** 13 de Diciembre de 2025
---
## 📦 Software Instalado
| Software | Version | Comando de Verificacion |
|----------|---------|-------------------------|
| **Node.js** | 24.12.0 LTS | `node --version` |
| **npm** | 11.6.2 | `npm --version` |
| **PHP** | 8.4.15 | `php --version` |
| **Composer** | 2.9.2 | `composer --version` |
| **Git** | 2.52.0 | `git --version` |
| **SSH** | OpenSSH 9.5 | `ssh -V` |
| **PuTTY** | 0.83.0 | Para plink/pscp |
---
## 🚀 Scripts Automatizados (Basados en Diretrizes v3.0)
```
scripts/
├── status.ps1 # Ver estado del proyecto
├── dev.ps1 # Iniciar servidores de desarrollo
├── quick-deploy.ps1 # Deploy rapido sin commit
├── release.ps1 # Workflow completo automatizado
└── setup-ssh.ps1 # Configurar SSH sin password (una vez)
```
### Workflow Completo (release.ps1)
El script `release.ps1` automatiza TODO el proceso segun las directrices:
1. ✅ Incrementa VERSION automaticamente
2. ✅ Actualiza CHANGELOG.md
3. ✅ Hace deploy al servidor
4. ✅ Abre navegador para test
5. ✅ Espera confirmacion del usuario
6. ✅ Hace commit y push
```powershell
# Correccion de bug (patch: 1.27.2 -> 1.27.3)
.\scripts\release.ps1 -VersionType patch -ChangeDescription "Corrigido bug X" -ChangeType Fixed
# Nueva funcionalidad (minor: 1.27.2 -> 1.28.0)
.\scripts\release.ps1 -VersionType minor -ChangeDescription "Nuevo widget Y" -ChangeType Added
# Deploy solo frontend
.\scripts\release.ps1 -VersionType patch -ChangeDescription "Ajuste CSS" -Deploy frontend
# Solo documentacion (sin deploy)
.\scripts\release.ps1 -VersionType patch -ChangeDescription "Actualizar docs" -Deploy none
```
### Quick Deploy (Desarrollo)
Para iteraciones rapidas durante desarrollo:
```powershell
# Deploy solo frontend
.\scripts\quick-deploy.ps1 -Target frontend
# Deploy solo backend
.\scripts\quick-deploy.ps1 -Target backend
# Deploy ambos
.\scripts\quick-deploy.ps1 -Target both
```
---
## 🔧 Configuracion Inicial
### 1. Primera vez - Configurar SSH sin password
```powershell
.\scripts\setup-ssh.ps1
```
Esto copia tu clave publica al servidor. Despues podras conectar sin password.
### 2. Verificar estado
```powershell
.\scripts\status.ps1
```
### 3. Iniciar desarrollo local
```powershell
.\scripts\dev.ps1
```
---
## 🌐 URLs
### Desarrollo Local
| Servicio | URL |
|----------|-----|
| Frontend | http://localhost:5173 |
| Backend API | http://localhost:8000/api |
### Produccion
| Servicio | URL |
|----------|-----|
| Aplicacion | https://webmoney.cnxifly.com |
| API | https://webmoney.cnxifly.com/api |
| phpMyAdmin | https://phpmyadmin.cnxifly.com |
| Webmail | https://webmail.cnxifly.com |
---
## ⚙️ Extensiones PHP Habilitadas
- openssl, curl, mbstring, fileinfo
- pdo_mysql, zip, gd, intl, exif, sodium
El archivo `php.ini` esta en:
```
C:\Users\marco\AppData\Local\Microsoft\WinGet\Packages\PHP.PHP.8.4_Microsoft.Winget.Source_8wekyb3d8bbwe\php.ini
```
---
## 📝 Directrices de Desarrollo (v3.0)
El workflow esta completamente automatizado. Las reglas principales son:
1. **Versionamento Semantico**: Cada commit incrementa la version
2. **Test Obligatorio**: Siempre testar en produccion antes de commit
3. **Scripts de Deploy**: Nunca hacer deploy manual
4. **Documentacion**: VERSION y CHANGELOG siempre actualizados
Todo esto es manejado automaticamente por `.\scripts\release.ps1`
---
## 🆘 Solucion de Problemas
### PHP no encuentra extensiones
```powershell
php -i | Select-String "extension_dir"
```
### Error de permisos en Laravel (OneDrive)
```powershell
attrib -R "backend\bootstrap\cache" /S /D
attrib -R "backend\storage" /S /D
```
### Git no configurado
```powershell
git config --global user.name "Tu Nombre"
git config --global user.email "tu@email.com"
```