- Reemplaza config_loader/config_model/hana_client/logger_utilities/outlook_utilities por core.py (pipeline funcional), hana_manager.py, logger_manager.py, scheduler.py y descargador_sovos.py (Playwright/Firefox) según la plantilla de servicios. - main.py pasa a loop continuo dirigido por scheduler.json, con manejo de SIGINT/SIGTERM. - Agrega Dockerfile, docker-compose.yml (restart unless-stopped) y certs/ para despliegue. - Agrega smb_transfer.py para la transferencia a carpeta compartida. - Saca las credenciales de HANA de config.json y las mueve a .env (HANA_HOST/PORT/USER/PASSWORD).
25 lines
825 B
YAML
25 lines
825 B
YAML
services:
|
|
descarga-cpe:
|
|
build: .
|
|
restart: unless-stopped
|
|
stop_grace_period: 15s
|
|
logging:
|
|
driver: json-file
|
|
options:
|
|
max-size: "10m"
|
|
max-file: "5"
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- ./config.json:/app/config.json:ro
|
|
- ./scheduler.json:/app/scheduler.json:ro
|
|
- ./downloads:/app/downloads
|
|
- ./logs:/app/logs
|
|
- ${SMB_HOST_MOUNT:-/Users/george/FileSAP}:/mnt/FileSAP
|
|
environment:
|
|
- TZ=America/Lima
|
|
# Dentro del contenedor la unidad está siempre en /mnt/FileSAP
|
|
# (independiente del punto de montaje del host: macOS Ubuntu).
|
|
- SMB_MOUNT_LINUX=/mnt/FileSAP
|
|
# Servicio persistente: main.py corre en loop dirigido por scheduler.json
|
|
# (ver CLAUDE.md regla 8). Se levanta una sola vez con `docker compose up -d`. |