Skip to content

Commit 339e57b

Browse files
authored
Merge branch 'main' into mcp_updates
2 parents c12e79d + 106c214 commit 339e57b

File tree

5 files changed

+42
-46
lines changed

5 files changed

+42
-46
lines changed

tests/model_serving/maas_billing/conftest.py

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
from tests.model_serving.maas_billing.maas_subscription.utils import (
3232
MAAS_DB_NAMESPACE,
3333
MAAS_SUBSCRIPTION_NAMESPACE,
34+
create_maas_subscription,
3435
get_maas_postgres_resources,
3536
patch_llmisvc_with_maas_router_and_tiers,
3637
wait_for_postgres_connection_log,
@@ -1190,3 +1191,41 @@ def maas_subscription_tinyllama_free(
11901191
) as maas_subscription_free:
11911192
maas_subscription_free.wait_for_condition(condition="Ready", status="True", timeout=300)
11921193
yield maas_subscription_free
1194+
1195+
1196+
@pytest.fixture(scope="class")
1197+
def minimal_subscription_for_free_user(
1198+
admin_client: DynamicClient,
1199+
maas_unprivileged_model_namespace,
1200+
maas_subscription_namespace,
1201+
) -> Generator[Any, Any, Any]:
1202+
"""Create a minimal MaaSModelRef + MaaSSubscription for system:authenticated."""
1203+
model_ns = maas_unprivileged_model_namespace.name
1204+
model_name = f"e2e-authz-model-{generate_random_name()}"
1205+
sub_name = f"e2e-authz-free-sub-{generate_random_name()}"
1206+
1207+
with (
1208+
MaaSModelRef(
1209+
client=admin_client,
1210+
name=model_name,
1211+
namespace=model_ns,
1212+
model_ref={"name": model_name, "namespace": model_ns, "kind": "LLMInferenceService"},
1213+
teardown=True,
1214+
wait_for_resource=True,
1215+
) as model_ref,
1216+
create_maas_subscription(
1217+
admin_client=admin_client,
1218+
subscription_namespace=maas_subscription_namespace.name,
1219+
subscription_name=sub_name,
1220+
owner_group_name="system:authenticated",
1221+
model_name=model_ref.name,
1222+
model_namespace=model_ref.namespace,
1223+
tokens_per_minute=1000,
1224+
window="1m",
1225+
priority=0,
1226+
teardown=True,
1227+
wait_for_resource=True,
1228+
) as subscription,
1229+
):
1230+
subscription.wait_for_condition(condition="Ready", status="True", timeout=300)
1231+
yield subscription

tests/model_serving/maas_billing/maas_api_key/conftest.py

Lines changed: 0 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,13 @@
77
from kubernetes.dynamic import DynamicClient
88
from ocp_resources.cron_job import CronJob
99
from ocp_resources.deployment import Deployment
10-
from ocp_resources.maas_model_ref import MaaSModelRef
1110
from ocp_resources.network_policy import NetworkPolicy
1211
from ocp_resources.pod import Pod
1312
from ocp_resources.resource import ResourceEditor
1413
from pytest_testconfig import config as py_config
1514

1615
from tests.model_serving.maas_billing.maas_api_key.utils import resolve_api_key_username
1716
from tests.model_serving.maas_billing.maas_subscription.utils import (
18-
create_maas_subscription,
1917
wait_for_auth_ready,
2018
)
2119
from tests.model_serving.maas_billing.utils import (
@@ -226,49 +224,6 @@ def short_expiration_api_key_id(
226224
)
227225

228226

229-
@pytest.fixture(scope="class")
230-
def minimal_subscription_for_free_user(
231-
admin_client: DynamicClient,
232-
maas_unprivileged_model_namespace,
233-
maas_subscription_namespace,
234-
) -> Generator[Any, Any, Any]:
235-
"""Create a minimal MaaSModelRef + MaaSSubscription for system:authenticated.
236-
237-
Does NOT wait for LLMInferenceService to be Ready — skips the 3-4 min model loading.
238-
Used by tests that only need a subscription to exist for key creation without performing
239-
model inference. Covers both free users and admin tokens.
240-
"""
241-
model_ns = maas_unprivileged_model_namespace.name
242-
model_name = f"e2e-authz-model-{generate_random_name()}"
243-
sub_name = f"e2e-authz-free-sub-{generate_random_name()}"
244-
245-
with (
246-
MaaSModelRef(
247-
client=admin_client,
248-
name=model_name,
249-
namespace=model_ns,
250-
model_ref={"name": model_name, "namespace": model_ns, "kind": "LLMInferenceService"},
251-
teardown=True,
252-
wait_for_resource=True,
253-
) as model_ref,
254-
create_maas_subscription(
255-
admin_client=admin_client,
256-
subscription_namespace=maas_subscription_namespace.name,
257-
subscription_name=sub_name,
258-
owner_group_name="system:authenticated",
259-
model_name=model_ref.name,
260-
model_namespace=model_ref.namespace,
261-
tokens_per_minute=1000,
262-
window="1m",
263-
priority=0,
264-
teardown=True,
265-
wait_for_resource=True,
266-
) as subscription,
267-
):
268-
subscription.wait_for_condition(condition="Ready", status="True", timeout=300)
269-
yield subscription
270-
271-
272227
@pytest.fixture()
273228
def maas_cleanup_cronjob(
274229
admin_client: DynamicClient,

tests/model_serving/maas_billing/maas_api_key/test_api_key_expiration.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
LOGGER = structlog.get_logger(name=__name__)
1212

13-
MAAS_API_KEY_MAX_EXPIRATION_DAYS = 30
13+
MAAS_API_KEY_MAX_EXPIRATION_DAYS = 90
1414

1515

1616
@pytest.mark.parametrize("ocp_token_for_actor", [{"type": "admin"}], indirect=True)

tests/model_serving/maas_billing/maas_subscription/test_multiple_auth_policies_per_model.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
"maas_model_tinyllama_premium",
2323
"maas_auth_policy_tinyllama_premium",
2424
"maas_subscription_tinyllama_premium",
25+
"minimal_subscription_for_free_user",
2526
)
2627
class TestMultipleAuthPoliciesPerModel:
2728
@pytest.mark.tier1

tests/model_serving/maas_billing/maas_subscription/test_subscription_without_auth_policy.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
"maas_model_tinyllama_premium",
2525
"maas_auth_policy_tinyllama_premium",
2626
"maas_subscription_tinyllama_premium",
27+
"minimal_subscription_for_free_user",
2728
)
2829
class TestSubscriptionWithoutAuthPolicy:
2930
"""

0 commit comments

Comments
 (0)