# Override para CI/Jenkins (E2E + pipeline). # # Problema que resuelve: en Jenkins los bind mounts `./backend:/app` y # `./frontend:/app` del compose base NO funcionan cuando el agente corre en un # contenedor y el docker daemon del host no ve `$WORKSPACE`. El daemon monta # un directorio vacío sobre `/app` y la app arranca sin código. # # Estrategia: con `!override` se reemplaza por completo la lista de volumes de # cada servicio, dejando solo los volúmenes nombrados (cache, uploads, # node_modules). El código se usa desde la imagen construida por # `docker compose build`, que sí se transfiere por el daemon API. # # Requiere Docker Compose v2.24+ (tag `!override`). services: backend: volumes: !override - backend_cache:/app/__pycache__ - backend_uploads:/app/uploads frontend: volumes: !override - frontend_node_modules:/app/node_modules celery_worker: volumes: !override - backend_cache:/app/__pycache__ - backend_uploads:/app/uploads celery_beat: volumes: !override - backend_cache:/app/__pycache__ - backend_uploads:/app/uploads # En Jenkins/agents no existe la red externa de aduanasoft-hub (desarrollo local). # Sin esto, `docker compose up` falla: "aduanasoft-hub_default ... could not be found". # Red bridge propia por proyecto (COMPOSE_PROJECT_NAME) para E2E/CI en paralelo. networks: hub-net: driver: bridge external: false name: ${COMPOSE_PROJECT_NAME:-anexo76-ci}_hub_net