Skip to content

Commit a90ec68

Browse files
committed
fix tls config
1 parent ab3fa31 commit a90ec68

1 file changed

Lines changed: 45 additions & 14 deletions

File tree

  • tests/e2e/features/steps

tests/e2e/features/steps/tls.py

Lines changed: 45 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
by a Background step that restores the backup before each scenario.
99
"""
1010

11+
import copy
1112
import os
1213
import shutil
1314

@@ -45,23 +46,53 @@ def _write_config(config: dict, path: str) -> None:
4546
yaml.dump(config, f, default_flow_style=False)
4647

4748

48-
def _find_tls_openai_provider(config: dict) -> dict:
49-
"""Find the tls-openai inference provider in the config.
49+
_TLS_PROVIDER_BASE: dict = {
50+
"provider_id": "tls-openai",
51+
"provider_type": "remote::openai",
52+
"config": {
53+
"api_key": "test-key",
54+
"base_url": "https://mock-tls-inference:8443/v1",
55+
"allowed_models": ["mock-tls-model"],
56+
},
57+
}
58+
59+
_TLS_MODEL_RESOURCE: dict = {
60+
"model_id": "mock-tls-model",
61+
"provider_id": "tls-openai",
62+
"provider_model_id": "mock-tls-model",
63+
}
64+
65+
66+
def _ensure_tls_provider(config: dict) -> dict:
67+
"""Find or create the tls-openai inference provider in the config.
68+
69+
If the provider does not exist, it is added along with the
70+
mock-tls-model registered resource.
5071
5172
Parameters:
5273
config: The Llama Stack configuration dictionary.
5374
5475
Returns:
55-
The tls-openai provider configuration.
56-
57-
Raises:
58-
AssertionError: If no tls-openai provider is found.
76+
The tls-openai provider configuration dictionary.
5977
"""
60-
providers = config.get("providers", {})
61-
for provider in providers.get("inference", []):
78+
providers = config.setdefault("providers", {})
79+
inference = providers.setdefault("inference", [])
80+
81+
for provider in inference:
6282
if provider.get("provider_id") == "tls-openai":
6383
return provider
64-
raise AssertionError("No tls-openai provider found in run.yaml")
84+
85+
# Provider not found — add it
86+
provider = copy.deepcopy(_TLS_PROVIDER_BASE)
87+
inference.append(provider)
88+
89+
# Also register the model resource
90+
resources = config.setdefault("registered_resources", {})
91+
models = resources.setdefault("models", [])
92+
if not any(m.get("model_id") == "mock-tls-model" for m in models):
93+
models.append(copy.deepcopy(_TLS_MODEL_RESOURCE))
94+
95+
return provider
6596

6697

6798
def _backup_llama_config() -> None:
@@ -128,7 +159,7 @@ def configure_tls_verify_false(context: Context) -> None:
128159
"""
129160
_backup_llama_config()
130161
config = _load_llama_config()
131-
provider = _find_tls_openai_provider(config)
162+
provider = _ensure_tls_provider(config)
132163

133164
if "config" not in provider:
134165
provider["config"] = {}
@@ -148,7 +179,7 @@ def configure_tls_verify_ca(context: Context) -> None:
148179
"""
149180
_backup_llama_config()
150181
config = _load_llama_config()
151-
provider = _find_tls_openai_provider(config)
182+
provider = _ensure_tls_provider(config)
152183

153184
if "config" not in provider:
154185
provider["config"] = {}
@@ -173,7 +204,7 @@ def configure_tls_verify_true(context: Context) -> None:
173204
"""
174205
_backup_llama_config()
175206
config = _load_llama_config()
176-
provider = _find_tls_openai_provider(config)
207+
provider = _ensure_tls_provider(config)
177208

178209
if "config" not in provider:
179210
provider["config"] = {}
@@ -193,7 +224,7 @@ def configure_tls_mtls(context: Context) -> None:
193224
"""
194225
_backup_llama_config()
195226
config = _load_llama_config()
196-
provider = _find_tls_openai_provider(config)
227+
provider = _ensure_tls_provider(config)
197228

198229
if "config" not in provider:
199230
provider["config"] = {}
@@ -221,7 +252,7 @@ def configure_tls_min_version(context: Context, version: str) -> None:
221252
"""
222253
_backup_llama_config()
223254
config = _load_llama_config()
224-
provider = _find_tls_openai_provider(config)
255+
provider = _ensure_tls_provider(config)
225256

226257
if "config" not in provider:
227258
provider["config"] = {}

0 commit comments

Comments
 (0)