Skip to content

Commit

Permalink
Merge pull request #202 from medizininformatik-initiative/feature/201…
Browse files Browse the repository at this point in the history
…-load-ontology-from-ontology-generator-repo

#201 - Load ontology from ontology generator repo
  • Loading branch information
michael-82 authored Sep 18, 2023
2 parents fdf7b7f + 210f4d1 commit 35c6aae
Show file tree
Hide file tree
Showing 30 changed files with 1,299,592 additions and 3,887,104 deletions.
152 changes: 80 additions & 72 deletions .github/integration-test/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,84 +4,82 @@ services:
container_name: feasibility-gui-backend
image: backend:latest
ports:
- ${CODEX_FEASIBILITY_BACKEND_PORT:-127.0.0.1:8091}:8090
- "8091:8090"
depends_on:
- feasibility-gui-backend-db
environment:
QUERYRESULT_PUBLIC_KEY: ${CODEX_FEASIBILITY_BACKEND_QUERYRESULT_PUBLIC_KEY:-MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEA1lWOfXzE/mUEPitNLxsDMtjERJGVhS8gP1WmuHPvjPxUOQyod4EbJcbJlkBqLqpaIs8Buy3gcbJvIPERdG1N1BSZ8NOKOtRubioKf30JwnLdZAae3vJAzRC3h42OPM3fohZCXMxbrju+KM0ZUIrLEXKEDMHQWfevCQCxeixvXVYpfXlkJIBGaWz4cDgEOiiwhU87AMzGZwjAIHvr4oTF/uHg6+C3Mdx0m8WLtygTiEixJegMb/txR+4gNVYrzpm5BwDUU7Qxy3nTUDYZLlTGeP9MBFWW+W87IHzgP+OFr3ZKMEkAPU0R1lqXFZCYcgZHGA5He2W701isnqkKIQT8ePOH43ZOXo3S34Pqw5oQ4Q2kPubp1wgZWw0VtEiZDtlwqUJ+r3CigU7NAFM5JnC/skiIBKetbWoNm1JPEfGOTrgjHD2uo82jSO8tV45LNH1EaR2+5UWSFZyDvTayLZsxsVlRFXJKgQJDI344R6lhGbLXbhqCuPzeQaHr1XGCKAtdAgMBAAE=}
QUERYRESULT_PUBLIC_KEY: "MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEA1lWOfXzE/mUEPitNLxsDMtjERJGVhS8gP1WmuHPvjPxUOQyod4EbJcbJlkBqLqpaIs8Buy3gcbJvIPERdG1N1BSZ8NOKOtRubioKf30JwnLdZAae3vJAzRC3h42OPM3fohZCXMxbrju+KM0ZUIrLEXKEDMHQWfevCQCxeixvXVYpfXlkJIBGaWz4cDgEOiiwhU87AMzGZwjAIHvr4oTF/uHg6+C3Mdx0m8WLtygTiEixJegMb/txR+4gNVYrzpm5BwDUU7Qxy3nTUDYZLlTGeP9MBFWW+W87IHzgP+OFr3ZKMEkAPU0R1lqXFZCYcgZHGA5He2W701isnqkKIQT8ePOH43ZOXo3S34Pqw5oQ4Q2kPubp1wgZWw0VtEiZDtlwqUJ+r3CigU7NAFM5JnC/skiIBKetbWoNm1JPEfGOTrgjHD2uo82jSO8tV45LNH1EaR2+5UWSFZyDvTayLZsxsVlRFXJKgQJDI344R6lhGbLXbhqCuPzeQaHr1XGCKAtdAgMBAAE="
# ----- app
QUERY_VALIDATION_ENABLED: ${FEASIBILITY_BACKEND_QUERY_VALIDATION_ENABLED:-true}
CQL_TRANSLATE_ENABLED: ${FEASIBILITY_BACKEND_CQL_TRANSLATE_ENABLED:-true}
FHIR_TRANSLATE_ENABLED: ${FEASIBILITY_BACKEND_FHIR_TRANSLATE_ENABLED:-false}
API_BASE_URL: ${FEASIBILITY_BACKEND_API_BASE_URL:-http://localhost:8091/api/}
ALLOWED_ORIGINS: ${FEASIBILITY_BACKEND_ALLOWED_ORIGINS:-https://localhost}
QUERYRESULT_EXPIRY_MINUTES: ${FEASIBILITY_BACKEND_QUERYRESULT_EXPIRY_MINUTES:-5}
QUERY_VALIDATION_ENABLED: "true"
CQL_TRANSLATE_ENABLED: "false"
FHIR_TRANSLATE_ENABLED: "false"
API_BASE_URL: "http://localhost:8091/api/"
ALLOWED_ORIGINS: "https://localhost"
QUERYRESULT_EXPIRY_MINUTES: 5
# ---- db config
FEASIBILITY_DATABASE_HOST: ${FEASIBILITY_BACKEND_DATASOURCE_HOST:-feasibility-gui-backend-db}
FEASIBILITY_DATABASE_PORT: ${FEASIBILITY_BACKEND_DATASOURCE_PORT:-5432}
FEASIBILITY_DATABASE_USER: ${FEASIBILITY_BACKEND_DATASOURCE_USERNAME:-guidbuser}
FEASIBILITY_DATABASE_PASSWORD: ${FEASIBILITY_BACKEND_DATASOURCE_PASSWORD:-guidbpw}
FEASIBILITY_DATABASE_HOST: "feasibility-gui-backend-db"
FEASIBILITY_DATABASE_PORT: 5432
FEASIBILITY_DATABASE_USER: "guidbuser"
FEASIBILITY_DATABASE_PASSWORD: "guidbpw"
# ---- auth
KEYCLOAK_ENABLED: ${FEASIBILITY_BACKEND_KEYCLOAK_ENABLED:-true}
KEYCLOAK_ALLOWED_ROLE: ${FEASIBILITY_BACKEND_KEYCLOAK_ALLOWED_ROLE:-FeasibilityUser}
KEYCLOAK_POWER_ROLE: ${FEASIBILITY_BACKEND_KEYCLOAK_POWER_ROLE:-FeasibilityPowerUser}
KEYCLOAK_ADMIN_ROLE: ${FEASIBILITY_BACKEND_KEYCLOAK_ADMIN_ROLE:-FeasibilityAdmin}
KEYCLOAK_BASE_URL_ISSUER: ${FEASIBILITY_BACKEND_KEYCLOAK_BASE_URL_ISSUER:-http://auth:8080/auth}
KEYCLOAK_BASE_URL_JWK: ${FEASIBILITY_BACKEND_KEYCLOAK_BASE_URL_JWK:-http://auth:8080/auth}
KEYCLOAK_REALM: ${FEASIBILITY_BACKEND_KEYCLOAK_REALM:-feasibility}
KEYCLOAK_ENABLED: "true"
KEYCLOAK_ALLOWED_ROLE: "FeasibilityUser"
KEYCLOAK_POWER_ROLE: "FeasibilityPowerUser"
KEYCLOAK_ADMIN_ROLE: "FeasibilityAdmin"
KEYCLOAK_BASE_URL_ISSUER: "http://auth:8080/auth"
KEYCLOAK_BASE_URL_JWK: "http://auth:8080/auth"
KEYCLOAK_REALM: "feasibility"
#---- Direct broker
BROKER_CLIENT_DIRECT_ENABLED: ${FEASIBILITY_BACKEND_BROKER_CLIENT_DIRECT_ENABLED:-true}
BROKER_CLIENT_DIRECT_USE_CQL: ${FEASIBILITY_BACKEND_BROKER_CLIENT_DIRECT_USE_CQL:-true}
BROKER_CLIENT_OBFUSCATE_RESULT_COUNT: ${FEASIBILITY_BACKEND_BROKER_CLIENT_OBFUSCATE_RESULT_COUNT:-false}
FLARE_WEBSERVICE_BASE_URL: ${FEASIBILITY_BACKEND_FLARE_WEBSERVICE_BASE_URL:-http://flare:8080}
CQL_SERVER_BASE_URL: ${FEASIBILITY_BACKEND_CQL_SERVER_BASE_URL:-http://blaze:8080/fhir}
BROKER_CLIENT_DIRECT_ENABLED: "true"
BROKER_CLIENT_DIRECT_USE_CQL: "false"
BROKER_CLIENT_OBFUSCATE_RESULT_COUNT: "false"
FLARE_WEBSERVICE_BASE_URL: "http://flare:8080"
CQL_SERVER_BASE_URL: "http://blaze:8080/fhir"
# ---- Aktin broker
BROKER_CLIENT_AKTIN_ENABLED: ${FEASIBILITY_BACKEND_AKTIN_ENABLED:-false}
AKTIN_BROKER_BASE_URL: ${FEASIBILITY_BACKEND_AKTIN_BROKER_BASE_URL:-http://aktin-broker:8080/broker/}
AKTIN_BROKER_API_KEY: ${FEASIBILITY_BACKEND_AKTIN_BROKER_API_KEY:-xxxApiKeyAdmin123}
BROKER_CLIENT_AKTIN_ENABLED: "false"
AKTIN_BROKER_BASE_URL: "http://aktin-broker:8080/broker/"
AKTIN_BROKER_API_KEY: "xxxApiKeyAdmin123"
# ---- DSF broker
BROKER_CLIENT_DSF_ENABLED: ${FEASIBILITY_BACKEND_DSF_ENABLED:-false}
DSF_SECURITY_CACERT: ${FEASIBILITY_BACKEND_DSF_CACERT:-/opt/codex-feasibility-security/ca.pem}
DSF_SECURITY_KEYSTORE_P12FILE: ${FEASIBILITY_BACKEND_DSF_DSF_SECURITY_KEYSTORE_P12FILE:-/opt/codex-feasibility-security/test-user.p12}
DSF_SECURITY_KEYSTORE_PASSWORD: ${FEASIBILITY_BACKEND_DSF_SECURITY_KEYSTORE_PASSWORD:-password}
DSF_PROXY_HOST: ${FEASIBILITY_BACKEND_DSF_PROXY_HOST}
DSF_PROXY_USERNAME: ${FEASIBILITY_BACKEND_DSF_PROXY_USERNAME}
DSF_PROXY_PASSWORD: ${FEASIBILITY_BACKEND_DSF_PROXY_PASSWORD}
DSF_WEBSERVICE_BASE_URL: ${FEASIBILITY_BACKEND_DSF_WEBSERVICE_BASE_URL:-https://dsf-zars-fhir-proxy/fhir}
DSF_WEBSOCKET_URL: ${FEASIBILITY_BACKEND_DSF_WEBSOCKET_URL:-wss://dsf-zars-fhir-proxy:443/fhir/ws}
DSF_ORGANIZATION_ID: ${FEASIBILITY_BACKEND_DSF_ORGANIZATION_ID:-Test_ZARS}
BROKER_CLIENT_DSF_ENABLED: "false"
DSF_SECURITY_CACERT: "/opt/codex-feasibility-security/ca.pem"
DSF_SECURITY_KEYSTORE_P12FILE: "/opt/codex-feasibility-security/test-user.p12"
DSF_SECURITY_KEYSTORE_PASSWORD: "password"
DSF_WEBSERVICE_BASE_URL: "https://dsf-zars-fhir-proxy/fhir"
DSF_WEBSOCKET_URL: "wss://dsf-zars-fhir-proxy:443/fhir/ws"
DSF_ORGANIZATION_ID: "Test_ZARS"
# ---- privacy
PRIVACY_QUOTA_SOFT_CREATE_AMOUNT: ${FEASIBILITY_BACKEND_PRIVACY_QUOTA_SOFT_CREATE_AMOUNT:-3}
PRIVACY_QUOTA_SOFT_CREATE_INTERVALMINUTES: ${FEASIBILITY_BACKEND_PRIVACY_QUOTA_SOFT_CREATE_INTERVALMINUTES:-1}
PRIVACY_QUOTA_HARD_CREATE_AMOUNT: ${FEASIBILITY_BACKEND_PRIVACY_QUOTA_HARD_CREATE_AMOUNT:-50}
PRIVACY_QUOTA_HARD_CREATE_INTERVALMINUTES: ${FEASIBILITY_BACKEND_PRIVACY_QUOTA_HARD_CREATE_INTERVALMINUTES:-10080}
PRIVACY_QUOTA_READ_SUMMARY_POLLINGINTERVALSECONDS: ${FEASIBILITY_BACKEND_PRIVACY_QUOTA_READ_SUMMARY_POLLINGINTERVALSECONDS:-10}
PRIVACY_QUOTA_READ_DETAILED_OBFUSCATED_POLLINGINTERVALSECONDS: ${FEASIBILITY_BACKEND_PRIVACY_QUOTA_READ_DETAILED_OBFUSCATED_POLLINGINTERVALSECONDS:-10}
PRIVACY_QUOTA_READ_DETAILED_OBFUSCATED_AMOUNT: ${FEASIBILITY_BACKEND_PRIVACY_QUOTA_READ_DETAILED_OBFUSCATED_AMOUNT:-3}
PRIVACY_QUOTA_READ_DETAILED_OBFUSCATED_INTERVALSECONDS: ${FEASIBILITY_BACKEND_PRIVACY_QUOTA_READ_DETAILED_OBFUSCATED_INTERVALSECONDS:-7200}
PRIVACY_THRESHOLD_RESULTS: ${FEASIBILITY_BACKEND_PRIVACY_THRESHOLD_RESULTS:-0}
PRIVACY_THRESHOLD_SITES: ${FEASIBILITY_BACKEND_PRIVACY_THRESHOLD_SITES:-0}
PRIVACY_QUOTA_SOFT_CREATE_AMOUNT: 3
PRIVACY_QUOTA_SOFT_CREATE_INTERVALMINUTES: 1
PRIVACY_QUOTA_HARD_CREATE_AMOUNT: 50
PRIVACY_QUOTA_HARD_CREATE_INTERVALMINUTES: 10080
PRIVACY_QUOTA_READ_SUMMARY_POLLINGINTERVALSECONDS: 10
PRIVACY_QUOTA_READ_DETAILED_OBFUSCATED_POLLINGINTERVALSECONDS: 10
PRIVACY_QUOTA_READ_DETAILED_OBFUSCATED_AMOUNT: 3
PRIVACY_QUOTA_READ_DETAILED_OBFUSCATED_INTERVALSECONDS: 7200
PRIVACY_THRESHOLD_RESULTS: 0
PRIVACY_THRESHOLD_SITES: 0
# ---- logging
LOG_LEVEL_SQL: ${FEASIBILITY_BACKEND_LOG_LEVEL_SQL:-warn}
LOG_LEVEL: ${FEASIBILITY_BACKEND_LOG_LEVEL:-warn}
LOG_LEVEL_SQL: "warn"
LOG_LEVEL: "warn"
restart: unless-stopped
volumes:
- ${FEASIBILITY_BACKEND_UI_PROFILES_PATH:-./ontology/ui_profiles}:/opt/codex-feasibility-backend/ontology/ui_profiles
- ${FEASIBILITY_BACKEND_CONCEPT_TREE_PATH:-./ontology/codex-code-tree.json}:/opt/codex-feasibility-backend/ontology/codex-code-tree.json
- ${FEASIBILITY_BACKEND_TERM_CODE_MAPPING_PATH:-./ontology/codex-term-code-mapping.json}:/opt/codex-feasibility-backend/ontology/codex-term-code-mapping.json
- ${FEASIBILITY_BACKEND_MIGRATION_PATH:-./ontology/migration/R__Load_latest_ui_profile.sql}:/opt/codex-feasibility-backend/ontology/migration/R__Load_latest_ui_profile.sql
- ${FEASIBILITY_BACKEND_CERTS_PATH:-./secrets}:/opt/codex-feasibility-security
- ./ontology/ui_profiles:/opt/codex-feasibility-backend/ontology/ui_profiles
- ./ontology/codex-code-tree.json:/opt/codex-feasibility-backend/ontology/codex-code-tree.json
- ./ontology/codex-term-code-mapping.json:/opt/codex-feasibility-backend/ontology/codex-term-code-mapping.json
- ./ontology/migration/R__Load_latest_ui_profile.sql:/opt/codex-feasibility-backend/ontology/migration/R__Load_latest_ui_profile.sql
- ./secrets:/opt/codex-feasibility-security
feasibility-gui-backend-db:
image: 'postgres:15-alpine'
container_name: feasibility-gui-backend-db
ports:
- ${CODEX_FEASIBILITY_BACKEND_DATABASE_PORT:-5432}:5432
- "5432:5432"
environment:
POSTGRES_USER: ${FEASIBILITY_BACKEND_DATASOURCE_USERNAME:-guidbuser}
POSTGRES_PASSWORD: ${FEASIBILITY_BACKEND_DATASOURCE_PASSWORD:-guidbpw}
POSTGRES_DB: codex_ui
POSTGRES_USER: "guidbuser"
POSTGRES_PASSWORD: "guidbpw"
POSTGRES_DB: "codex_ui"

blaze:
image: "samply/blaze:0.20"
image: "samply/blaze:0.22"
environment:
BASE_URL: "http://blaze:8080"
JAVA_TOOL_OPTIONS: "-Xmx1g"
Expand All @@ -91,13 +89,23 @@ services:
volumes:
- "blaze-data:/app/data"

flare:
image: ghcr.io/medizininformatik-initiative/flare:2.0.0-rc2
ports:
- "8092:8080"
environment:
FLARE_FHIR_SERVER: "http://blaze:8080/fhir"
JAVA_TOOL_OPTIONS: "-Xmx1g"
LOG_LEVEL: "debug"
restart: unless-stopped

auth-db:
image: postgres:15-alpine
restart: unless-stopped
environment:
POSTGRES_DB: ${FEASIBILITY_KC_DB:-keycloakdb}
POSTGRES_USER: ${FEASIBILITY_KC_DB_USER:-keycloakdbuser}
POSTGRES_PASSWORD: ${FEASIBILITY_KC_DB_PW:-keycloakdbpw}
POSTGRES_DB: "keycloakdb"
POSTGRES_USER: "keycloakdbuser"
POSTGRES_PASSWORD: "keycloakdbpw"
volumes:
- "feasibility-auth-db:/var/lib/postgresql/data"

Expand All @@ -106,17 +114,17 @@ services:
command: ["start", "--import-realm"]
restart: unless-stopped
environment:
KC_DB: postgres
KC_DB: "postgres"
KC_DB_URL: "jdbc:postgresql://auth-db:5432/${FEASIBILITY_KC_DB:-keycloakdb}"
KC_DB_USERNAME: ${FEASIBILITY_KC_DB_USER:-keycloakdbuser}
KC_DB_PASSWORD: ${FEASIBILITY_KC_DB_PW:-keycloakdbpw}
KEYCLOAK_ADMIN: ${FEASIBILITY_KC_ADMIN_USER:-keycloakadmin}
KEYCLOAK_ADMIN_PASSWORD: ${FEASIBILITY_KC_ADMIN_PW:-keycloak}
KC_HTTP_RELATIVE_PATH: ${FEASIBILITY_KC_HTTP_RELATIVE_PATH:-/auth}
KC_HOSTNAME_URL: ${FEASIBILITY_KC_HOSTNAME_URL:-http://auth:8080/auth}
KC_HOSTNAME_ADMIN_URL: ${FEASIBILITY_KC_HOSTNAME_ADMIN_URL:-http://auth:8080/auth/keycloakadmin}
KC_LOG_LEVEL: ${FEASIBILITY_KC_LOG_LEVEL:-info}
KC_PROXY: ${FEASIBILITY_KC_PROXY:-edge}
KC_DB_USERNAME: "keycloakdbuser"
KC_DB_PASSWORD: "keycloakdbpw"
KEYCLOAK_ADMIN: "keycloakadmin"
KEYCLOAK_ADMIN_PASSWORD: "keycloak"
KC_HTTP_RELATIVE_PATH: "/auth"
KC_HOSTNAME_URL: "http://auth:8080/auth"
KC_HOSTNAME_ADMIN_URL: "http://auth:8080/auth/keycloakadmin"
KC_LOG_LEVEL: "info"
KC_PROXY: "edge"
ports:
- "8083:8080"
volumes:
Expand Down
Loading

0 comments on commit 35c6aae

Please sign in to comment.