1919import logging
2020import io
2121import time
22+ from typing import Any , Dict
2223
2324from fastapi import testclient
2425
@@ -139,9 +140,23 @@ def create_test_backend(self, database=None, backend_name='test_backend'):
139140 agent_helpers .create_backend (
140141 database , backend_name , backend_messages .InitBody (** backend ))
141142
143+ def create_test_group_template (self , name : str , group_template : Dict [str , Any ]) -> None :
144+ """Helper function to create a group template.
145+
146+ Args:
147+ name: Name of the group template
148+ group_template: The group template dict (must contain apiVersion, kind, metadata.name)
149+ """
150+ config_service .put_group_template (
151+ name = name ,
152+ request = config_objects .PutGroupTemplateRequest (configs = group_template ),
153+ username = 'test@nvidia.com' ,
154+ )
155+
142156 def create_test_pool (self , pool_name = 'test_pool' , description = 'test_description' ,
143157 default_platform = 'test_platform' , backend = 'test_backend' ,
144- common_pod_template = None , enable_maintenance = False ):
158+ common_pod_template = None , common_group_templates = None ,
159+ enable_maintenance = False ):
145160 """Helper function to create a test pool with configurable parameters.
146161
147162 Args:
@@ -150,6 +165,7 @@ def create_test_pool(self, pool_name='test_pool', description='test_description'
150165 default_platform: Default platform for the pool
151166 backend: Backend for the pool
152167 common_pod_template: List of pod templates to use (defaults to None)
168+ common_group_templates: List of group template names to use (defaults to None)
153169 enable_maintenance: Whether maintenance mode is enabled
154170
155171 Returns:
@@ -169,6 +185,9 @@ def create_test_pool(self, pool_name='test_pool', description='test_description'
169185 if common_pod_template :
170186 pool_config ['common_pod_template' ] = common_pod_template
171187
188+ if common_group_templates :
189+ pool_config ['common_group_templates' ] = common_group_templates
190+
172191 config_service .put_pool (
173192 name = pool_name ,
174193 request = config_objects .PutPoolRequest (
0 commit comments