@@ -28,8 +28,16 @@ def __init__(self, access_key: str, secret_key: str, region: str = "cn-beijing")
2828 self .ak = access_key
2929 self .sk = secret_key
3030 self .region = region
31- assert region in ["cn-beijing" , "cn-guangzhou" , "cn-shanghai" ]
3231 self .version = "2022-05-12"
32+ try :
33+ from agentkit .toolkit .config .global_config import get_global_config
34+ gc = get_global_config ()
35+ default_host = f"cr.{ self .region } .volcengineapi.com"
36+ self .host = gc .cr .host or default_host
37+ self .scheme = gc .cr .schema or "https"
38+ except Exception :
39+ self .host = f"cr.{ self .region } .volcengineapi.com"
40+ self .scheme = "https"
3341
3442 def _create_instance (
3543 self ,
@@ -70,7 +78,8 @@ def _create_instance(
7078 service = "cr" ,
7179 version = self .version ,
7280 region = self .region ,
73- host = f"cr.{ self .region } .volcengineapi.com" ,
81+ host = self .host ,
82+ scheme = self .scheme ,
7483 )
7584 logger .debug (f"create cr instance { instance_name } : { response } " )
7685
@@ -122,7 +131,8 @@ def _check_instance(self, instance_name: str) -> str:
122131 service = "cr" ,
123132 version = self .version ,
124133 region = self .region ,
125- host = f"cr.{ self .region } .volcengineapi.com" ,
134+ host = self .host ,
135+ scheme = self .scheme ,
126136 )
127137 logger .debug (f"check cr instance { instance_name } : { response } " )
128138
@@ -159,7 +169,8 @@ def _create_namespace(
159169 service = "cr" ,
160170 version = self .version ,
161171 region = self .region ,
162- host = f"cr.{ self .region } .volcengineapi.com" ,
172+ host = self .host ,
173+ scheme = self .scheme ,
163174 )
164175 logger .debug (f"create cr namespace { namespace_name } : { response } " )
165176
@@ -210,7 +221,8 @@ def _create_repo(
210221 service = "cr" ,
211222 version = self .version ,
212223 region = self .region ,
213- host = f"cr.{ self .region } .volcengineapi.com" ,
224+ host = self .host ,
225+ scheme = self .scheme ,
214226 )
215227 logger .debug (f"create cr repo { repo_name } : { response } " )
216228
@@ -243,7 +255,8 @@ def _get_authorization_token(self, instance_name: str):
243255 service = "cr" ,
244256 version = self .version ,
245257 region = self .region ,
246- host = f"cr.{ self .region } .volcengineapi.com" ,
258+ host = self .host ,
259+ scheme = self .scheme ,
247260 )
248261 logger .debug (f"get cr authorization token: { response } " )
249262
@@ -274,7 +287,8 @@ def _get_public_endpoint(self, instance_name: str = DEFAULT_CR_INSTANCE_NAME):
274287 service = "cr" ,
275288 version = self .version ,
276289 region = self .region ,
277- host = f"cr.{ self .region } .volcengineapi.com" ,
290+ host = self .host ,
291+ scheme = self .scheme ,
278292 )
279293 logger .debug (f"get cr public endpoint: { response } " )
280294 if "Error" in response ["ResponseMetadata" ]:
@@ -304,7 +318,8 @@ def _update_public_endpoint(self, instance_name: str, enabled: bool):
304318 service = "cr" ,
305319 version = self .version ,
306320 region = self .region ,
307- host = f"cr.{ self .region } .volcengineapi.com" ,
321+ host = self .host ,
322+ scheme = self .scheme ,
308323 )
309324 logger .debug (f"update cr public endpoint: { response } " )
310325 if "Error" in response ["ResponseMetadata" ]:
@@ -336,7 +351,8 @@ def _create_endpoint_acl_policies(self, instance_name: str = DEFAULT_CR_INSTANCE
336351 service = "cr" ,
337352 version = self .version ,
338353 region = self .region ,
339- host = f"cr.{ self .region } .volcengineapi.com" ,
354+ host = self .host ,
355+ scheme = self .scheme ,
340356 )
341357 logger .debug (f"create endpoint acl policies: { response } " )
342358
@@ -367,7 +383,8 @@ def _list_domains(self, instance_name: str = DEFAULT_CR_INSTANCE_NAME):
367383 service = "cr" ,
368384 version = self .version ,
369385 region = self .region ,
370- host = f"cr.{ self .region } .volcengineapi.com" ,
386+ host = self .host ,
387+ scheme = self .scheme ,
371388 )
372389 logger .debug (f"list cr domains: { response } " )
373390 if "Error" in response ["ResponseMetadata" ]:
@@ -386,6 +403,14 @@ def _get_default_domain(self, instance_name: str = DEFAULT_CR_INSTANCE_NAME):
386403 get default cr domain
387404 """
388405 domains = self ._list_domains (instance_name = instance_name )
406+ # 如果只有一个结果,直接返回该域名
407+ try :
408+ if isinstance (domains , list ) and len (domains ) == 1 :
409+ single = domains [0 ]
410+ if isinstance (single , dict ) and "Domain" in single :
411+ return single ["Domain" ]
412+ except Exception :
413+ pass
389414 for domain in domains :
390415 if domain ["Default" ] == True :
391416 return domain ["Domain" ]
0 commit comments