From 8a7d7665818d47c0fc96eb5ad3b116338b58cee4 Mon Sep 17 00:00:00 2001
From: "p.delpy@dkfz-heidelberg.de"
Date: Mon, 10 Mar 2025 08:55:44 +0100
Subject: [PATCH] fix: squash - add teiler
---
cce/modules/teiler-compose.yml | 81 ++++++++++++++++++++++++++++++++++
cce/modules/teiler-setup.sh | 9 ++++
2 files changed, 90 insertions(+)
create mode 100644 cce/modules/teiler-compose.yml
create mode 100644 cce/modules/teiler-setup.sh
diff --git a/cce/modules/teiler-compose.yml b/cce/modules/teiler-compose.yml
new file mode 100644
index 0000000..20d0db3
--- /dev/null
+++ b/cce/modules/teiler-compose.yml
@@ -0,0 +1,81 @@
+version: "3.7"
+
+services:
+
+ teiler-orchestrator:
+ image: docker.verbis.dkfz.de/cache/samply/teiler-orchestrator:latest
+ container_name: bridgehead-teiler-orchestrator
+ labels:
+ - "traefik.enable=true"
+ - "traefik.http.routers.teiler_orchestrator_cce.rule=PathPrefix(`/cce-teiler`)"
+ - "traefik.http.services.teiler_orchestrator_cce.loadbalancer.server.port=9000"
+ - "traefik.http.routers.teiler_orchestrator_cce.tls=true"
+ - "traefik.http.middlewares.teiler_orchestrator_cce_strip.stripprefix.prefixes=/cce-teiler"
+ - "traefik.http.routers.teiler_orchestrator_cce.middlewares=teiler_orchestrator_cce_strip"
+ environment:
+ TEILER_BACKEND_URL: "https://${HOST}/cce-teiler-backend"
+ TEILER_DASHBOARD_URL: "https://${HOST}/cce-teiler-dashboard"
+ DEFAULT_LANGUAGE: "${TEILER_DEFAULT_LANGUAGE_LOWER_CASE}"
+ HTTP_RELATIVE_PATH: "/cce-teiler"
+
+ teiler-dashboard:
+ image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:develop
+ container_name: bridgehead-teiler-dashboard
+ labels:
+ - "traefik.enable=true"
+ - "traefik.http.routers.teiler_dashboard_cce.rule=PathPrefix(`/cce-teiler-dashboard`)"
+ - "traefik.http.services.teiler_dashboard_cce.loadbalancer.server.port=80"
+ - "traefik.http.routers.teiler_dashboard_cce.tls=true"
+ - "traefik.http.middlewares.teiler_dashboard_cce_strip.stripprefix.prefixes=/cce-teiler-dashboard"
+ - "traefik.http.routers.teiler_dashboard_cce.middlewares=teiler_dashboard_cce_strip"
+ environment:
+ DEFAULT_LANGUAGE: "${TEILER_DEFAULT_LANGUAGE}"
+ TEILER_BACKEND_URL: "https://${HOST}/cce-teiler-backend"
+ OIDC_URL: "${OIDC_URL}"
+ OIDC_REALM: "${OIDC_REALM}"
+ OIDC_CLIENT_ID: "${OIDC_PUBLIC_CLIENT_ID}"
+ OIDC_TOKEN_GROUP: "${OIDC_GROUP_CLAIM}"
+ TEILER_ADMIN_NAME: "${OPERATOR_FIRST_NAME} ${OPERATOR_LAST_NAME}"
+ TEILER_ADMIN_EMAIL: "${OPERATOR_EMAIL}"
+ TEILER_ADMIN_PHONE: "${OPERATOR_PHONE}"
+ TEILER_PROJECT: "${PROJECT}"
+ EXPORTER_API_KEY: "${EXPORTER_API_KEY}"
+ TEILER_ORCHESTRATOR_URL: "https://${HOST}/cce-teiler"
+ TEILER_DASHBOARD_HTTP_RELATIVE_PATH: "/cce-teiler-dashboard"
+ TEILER_ORCHESTRATOR_HTTP_RELATIVE_PATH: "/cce-teiler"
+ TEILER_USER: "${OIDC_USER_GROUP}"
+ TEILER_ADMIN: "${OIDC_ADMIN_GROUP}"
+ REPORTER_DEFAULT_TEMPLATE_ID: "cce-qb"
+ EXPORTER_DEFAULT_TEMPLATE_ID: "cce"
+
+
+ teiler-backend:
+ image: docker.verbis.dkfz.de/ccp/dktk-teiler-backend:latest
+ container_name: bridgehead-teiler-backend
+ labels:
+ - "traefik.enable=true"
+ - "traefik.http.routers.teiler_backend_cce.rule=PathPrefix(`/cce-teiler-backend`)"
+ - "traefik.http.services.teiler_backend_cce.loadbalancer.server.port=8085"
+ - "traefik.http.routers.teiler_backend_cce.tls=true"
+ - "traefik.http.middlewares.teiler_backend_cce_strip.stripprefix.prefixes=/cce-teiler-backend"
+ - "traefik.http.routers.teiler_backend_cce.middlewares=teiler_backend_cce_strip"
+ environment:
+ LOG_LEVEL: "INFO"
+ APPLICATION_PORT: "8085"
+ APPLICATION_ADDRESS: "${HOST}"
+ DEFAULT_LANGUAGE: "${TEILER_DEFAULT_LANGUAGE}"
+ CONFIG_ENV_VAR_PATH: "/run/secrets/cce.conf"
+ TEILER_ORCHESTRATOR_HTTP_RELATIVE_PATH: "/cce-teiler"
+ TEILER_ORCHESTRATOR_URL: "https://${HOST}/cce-teiler"
+ TEILER_DASHBOARD_DE_URL: "https://${HOST}/cce-teiler-dashboard/de"
+ TEILER_DASHBOARD_EN_URL: "https://${HOST}/cce-teiler-dashboard/en"
+ CENTRAX_URL: "${CENTRAXX_URL}"
+ HTTP_PROXY: "http://forward_proxy:3128"
+ ENABLE_MTBA: "${ENABLE_MTBA}"
+ ENABLE_DATASHIELD: "${ENABLE_DATASHIELD}"
+ secrets:
+ - cce.conf
+
+secrets:
+ cce.conf:
+ file: /etc/bridgehead/cce.conf
diff --git a/cce/modules/teiler-setup.sh b/cce/modules/teiler-setup.sh
new file mode 100644
index 0000000..ed41163
--- /dev/null
+++ b/cce/modules/teiler-setup.sh
@@ -0,0 +1,9 @@
+#!/bin/bash -e
+
+if [ "$ENABLE_TEILER" == true ];then
+ log INFO "Teiler setup detected -- will start Teiler services."
+ OVERRIDE+=" -f ./$PROJECT/modules/teiler-compose.yml"
+ TEILER_DEFAULT_LANGUAGE=DE
+ TEILER_DEFAULT_LANGUAGE_LOWER_CASE=${TEILER_DEFAULT_LANGUAGE,,}
+ add_public_oidc_redirect_url "/cce-teiler/*"
+fi