@@ -255,45 +255,50 @@ def test_with_remote_milvus(llama_stack_server_config):
255255 env_vars .append ({"name" : "TRUSTYAI_EMBEDDING_MODEL" , "value" : trustyai_embedding_model })
256256
257257 # Kubeflow-related environment variables
258- if params .get ("enable_ragas_remote" ):
259- # Get fixtures only when Ragas Remote/Kubeflow is enabled
258+ enable_ragas_remote = params .get ("enable_ragas_remote" , False )
259+ enable_garak_remote = params .get ("enable_garak_remote" , False )
260+ enable_kubeflow_eval = enable_ragas_remote or enable_garak_remote
261+
262+ if enable_kubeflow_eval :
263+ # Get fixtures only when Kubeflow is enabled
260264 model_namespace = request .getfixturevalue (argname = "model_namespace" )
261265 current_client_token = request .getfixturevalue (argname = "current_client_token" )
262266 dspa_route = request .getfixturevalue (argname = "dspa_route" )
263267 dspa_s3_secret = request .getfixturevalue (argname = "dspa_s3_secret" )
264268
265- # KUBEFLOW_LLAMA_STACK_URL: Build from LlamaStackDistribution service
269+ # New Garak-specific flag
270+ env_vars .append ({"name" : "ENABLE_KUBEFLOW_GARAK" , "value" : str (enable_garak_remote ).lower ()})
271+
272+ # KUBEFLOW_LLAMA_STACK_URL: Use internal service endpoint for KFP to callback to
273+ distribution_name = params .get ("distribution_name" , "rh-dev" )
266274 env_vars .append ({
267275 "name" : "KUBEFLOW_LLAMA_STACK_URL" ,
268276 "value" : f"http://{ distribution_name } -service.{ model_namespace .name } .svc.cluster.local:8321" ,
269277 })
270278
271- # KUBEFLOW_PIPELINES_ENDPOINT: Get from DSPA route
279+ # KUBEFLOW_PIPELINES_ENDPOINT: Injected from DSPA
272280 env_vars .append ({"name" : "KUBEFLOW_PIPELINES_ENDPOINT" , "value" : f"https://{ dspa_route .instance .spec .host } " })
273-
274- # KUBEFLOW_NAMESPACE: Use model namespace
275281 env_vars .append ({"name" : "KUBEFLOW_NAMESPACE" , "value" : model_namespace .name })
276282
277- # KUBEFLOW_BASE_IMAGE
278- env_vars .append ({
279- "name" : "KUBEFLOW_BASE_IMAGE" ,
280- "value" : params .get (
281- "kubeflow_base_image" ,
282- "quay.io/diegosquayorg/my-ragas-provider-image"
283- "@sha256:3749096c47f7536d6be2a7932e691abebacd578bafbe65bad2f7db475e2b93fb" ,
284- ),
285- })
283+ # KUBEFLOW_BASE_IMAGE: Select based on provider
284+ default_garak_image = "quay.io/trustyai/garak-remote-provider:latest"
285+ default_ragas_image = "quay.io/diegosquayorg/my-ragas-provider-image@sha256:3749096c47f7536d6be2a7932e691abebacd578bafbe65bad2f7db475e2b93fb"
286+
287+ selected_image = params .get ("kubeflow_base_image" )
288+ if not selected_image :
289+ selected_image = default_garak_image if enable_garak_remote else default_ragas_image
286290
287- # KUBEFLOW_RESULTS_S3_PREFIX: Build from MinIO bucket
291+ env_vars .append ({"name" : "KUBEFLOW_BASE_IMAGE" , "value" : selected_image })
292+
293+ # KUBEFLOW_RESULTS_S3_PREFIX: Separate results by provider type
294+ s3_subfolder = "garak-results" if enable_garak_remote else "ragas-results"
288295 env_vars .append ({
289296 "name" : "KUBEFLOW_RESULTS_S3_PREFIX" ,
290- "value" : params .get ("kubeflow_results_s3_prefix" , "s3://llms/ragas-results " ),
297+ "value" : params .get ("kubeflow_results_s3_prefix" , f "s3://llms/{ s3_subfolder } " ),
291298 })
292299
293- # KUBEFLOW_S3_CREDENTIALS_SECRET_NAME: Use DSPA secret name
300+ # Auth and Storage (Shared)
294301 env_vars .append ({"name" : "KUBEFLOW_S3_CREDENTIALS_SECRET_NAME" , "value" : dspa_s3_secret .name })
295-
296- # KUBEFLOW_PIPELINES_TOKEN: Get from current client token
297302 env_vars .append ({"name" : "KUBEFLOW_PIPELINES_TOKEN" , "value" : str (current_client_token )})
298303
299304 # POSTGRESQL environment variables for sql_default and kvstore_default
0 commit comments