Initial commit: SaveUrl project migration from Drive
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
# SaveUrl (FTP → URLs → SQL Server)
|
||||
|
||||
Este proyecto **lee listados de archivos desde un FTP**, **construye URLs** por archivo y **guarda nuevas URLs en SQL Server** (tabla `URL_FTP`). La ejecución genera **logs “estructurados” en Kafka** y envía **notificación por webhook** ante errores.
|
||||
|
||||
La documentación completa vive en la carpeta [`documentacion/`](documentacion/). Si solo necesitas “por dónde empezar”, usa los links por rol de abajo.
|
||||
|
||||
## Inicio rápido (por rol)
|
||||
|
||||
- **Operación / soporte**: [`documentacion/07_RUNBOOK_OPERACION.md`](documentacion/07_RUNBOOK_OPERACION.md) y [`documentacion/08_TROUBLESHOOTING.md`](documentacion/08_TROUBLESHOOTING.md)
|
||||
- **Despliegue en Airflow**: [`documentacion/04_DESPLIEGUE_AIRFLOW.md`](documentacion/04_DESPLIEGUE_AIRFLOW.md) y [`documentacion/03_CONFIGURACION_VARIABLES.md`](documentacion/03_CONFIGURACION_VARIABLES.md)
|
||||
- **Desarrollo / mantenimiento**: [`documentacion/02_INSTALACION_LOCAL.md`](documentacion/02_INSTALACION_LOCAL.md), [`documentacion/05_FLUJO_Y_ARQUITECTURA.md`](documentacion/05_FLUJO_Y_ARQUITECTURA.md) y [`documentacion/06_REFERENCIA_TECNICA_SAVEURL.md`](documentacion/06_REFERENCIA_TECNICA_SAVEURL.md)
|
||||
- **Seguridad**: [`documentacion/09_SEGURIDAD_Y_SECRETS.md`](documentacion/09_SEGURIDAD_Y_SECRETS.md)
|
||||
- **Índice completo**: [`documentacion/00_INDICE.md`](documentacion/00_INDICE.md)
|
||||
|
||||
## Cómo se ejecuta (dos caminos)
|
||||
|
||||
### 1) Desarrollo local (usa `.env`)
|
||||
|
||||
Para desarrollo/pruebas locales se usa `.env` para que cada desarrollador pueda **cambiar credenciales** y reproducir casos rápidamente.
|
||||
|
||||
- **Plantilla**: copiar `.env.example` → `.env` y completar valores (nunca subir `.env` al repo).
|
||||
- **Guía**: ver [`documentacion/02_INSTALACION_LOCAL.md`](documentacion/02_INSTALACION_LOCAL.md) y [`documentacion/03_CONFIGURACION_VARIABLES.md`](documentacion/03_CONFIGURACION_VARIABLES.md)
|
||||
|
||||
Comandos típicos en Windows:
|
||||
|
||||
```powershell
|
||||
python -m venv env
|
||||
.\env\Scripts\Activate.ps1
|
||||
python SaveUrl.py
|
||||
```
|
||||
|
||||
### 2) En Airflow (usa Airflow Variables)
|
||||
|
||||
En el entorno Airflow, la configuración se lee desde **Airflow Variables** (no desde `.env`).
|
||||
|
||||
- **Despliegue**: ver [`documentacion/04_DESPLIEGUE_AIRFLOW.md`](documentacion/04_DESPLIEGUE_AIRFLOW.md)
|
||||
- **Variables requeridas**: ver [`documentacion/03_CONFIGURACION_VARIABLES.md`](documentacion/03_CONFIGURACION_VARIABLES.md)
|
||||
|
||||
> Nota: el DAG importa `SaveUrl.py` desde una ruta esperada dentro del contenedor (detalles en la guía de despliegue).
|
||||
|
||||
## Componentes principales
|
||||
|
||||
- `SaveUrl.py`: lógica de negocio (entrypoint `run_save_url`).
|
||||
- `dag_save_url_ftp.py`: DAG que ejecuta `run_save_url` en Airflow.
|
||||
- `documentacion/`: documentación de operación, despliegue y referencia técnica.
|
||||
|
||||
## Configuración
|
||||
|
||||
- **Lista completa de variables (local y Airflow)**: [`documentacion/03_CONFIGURACION_VARIABLES.md`](documentacion/03_CONFIGURACION_VARIABLES.md)
|
||||
- **Seguridad de secretos**: [`documentacion/09_SEGURIDAD_Y_SECRETS.md`](documentacion/09_SEGURIDAD_Y_SECRETS.md)
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
Si ves errores de conexión a FTP/SQL Server, problemas de SSL/SASL de Kafka o fallos de webhook, empieza por:
|
||||
|
||||
- [`documentacion/08_TROUBLESHOOTING.md`](documentacion/08_TROUBLESHOOTING.md)
|
||||
- [`documentacion/07_RUNBOOK_OPERACION.md`](documentacion/07_RUNBOOK_OPERACION.md)
|
||||
Reference in New Issue
Block a user