From 3f37961a8555d1920bec67fecc6d9d5f2ef2ee1c Mon Sep 17 00:00:00 2001 From: mandalkam Date: Mon, 18 May 2026 16:00:03 +0200 Subject: [PATCH] Make validator URL configurable, so we can use a external Validator / API instead of the internal Docker service / HAPI instance --- home/fhirvalidation.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/home/fhirvalidation.py b/home/fhirvalidation.py index 96585aa..bfba22c 100644 --- a/home/fhirvalidation.py +++ b/home/fhirvalidation.py @@ -9,8 +9,12 @@ from tqdm.auto import tqdm class Validator(): def __init__(self, fhir_base_url=None): - self.fhir_base_url = fhir_base_url + self.validator_api_url = 'http://fhir-validation-server:8080/fhir/{{resource_type}}/$validate' + if (os.environ.get('FHIR_VALIDATION_VALIDATOR_API_URL')): + self.validator_api_url = os.environ.get('FHIR_VALIDATION_VALIDATOR_API_URL') + + self.fhir_base_url = fhir_base_url if not self.fhir_base_url: self.fhir_base_url = os.environ.get('FHIR_VALIDATION_DATASOURCE_BASEURL') @@ -37,8 +41,11 @@ class Validator(): else: data = json.dumps(resource) - # todo: use environment variable and set it in docker-compose - r = requests.post('http://fhir-validation-server:8080/fhir/' + resource_type + '/$validate', headers=headers, + validator_api_url = self.validator_api_url + validator_api_url = validator_api_url.replace('{{resource_type}}', resource_type) + validator_api_url = validator_api_url.replace('{{ resource_type }}', resource_type) + + r = requests.post(validator_api_url, headers=headers, data=data) outcome = r.json() return outcome