version: "3.7"

services:
  mtba:
    image: docker.verbis.dkfz.de/cache/samply/mtba:develop
    container_name: bridgehead-mtba
    environment:
      BLAZE_STORE_URL: http://blaze:8080
      # NOTE: Aktuell Berechtigungen wie MagicPL!!!
      # TODO: Add separate ApiKey to MagicPL only for MTBA!
      ID_MANAGER_API_KEY: ${IDMANAGER_UPLOAD_APIKEY}
      ID_MANAGER_PSEUDONYM_ID_TYPE: BK_${IDMANAGEMENT_FRIENDLY_ID}_L-ID
      ID_MANAGER_URL: http://id-manager:8080/id-manager
      PATIENT_CSV_FIRST_NAME_HEADER: ${MTBA_PATIENT_CSV_FIRST_NAME_HEADER}
      PATIENT_CSV_LAST_NAME_HEADER: ${MTBA_PATIENT_CSV_LAST_NAME_HEADER}
      PATIENT_CSV_GENDER_HEADER: ${MTBA_PATIENT_CSV_GENDER_HEADER}
      PATIENT_CSV_BIRTHDAY_HEADER: ${MTBA_PATIENT_CSV_BIRTHDAY_HEADER}
      CBIOPORTAL_URL:  http://cbioportal:8080
      FILE_CHARSET: ${MTBA_FILE_CHARSET}
      FILE_END_OF_LINE: ${MTBA_FILE_END_OF_LINE}
      CSV_DELIMITER: ${MTBA_CSV_DELIMITER}
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.mtba_ccp.rule=PathPrefix(`/mtba`)"
      - "traefik.http.services.mtba_ccp.loadbalancer.server.port=8480"
      - "traefik.http.routers.mtba_ccp.tls=true"
      - "traefik.http.middlewares.mtba_ccp_strip.stripprefix.prefixes=/mtba"
      - "traefik.http.routers.mtba_ccp.middlewares=mtba_ccp_strip, auth"
    volumes:
      - /tmp/bridgehead/mtba/input:/app/input
      - /tmp/bridgehead/mtba/persist:/app/persist

  # TODO: Include CBioPortal in Deployment ...
  # NOTE: CBioPortal can't load data while the system is running. So after import of data bridgehead needs to be restarted!
  # TODO: Find a trigger to let mtba signal a restart for CBioPortal

volumes:
  mtba-data: