|
import logging |
|
import os |
|
import time |
|
from typing import Any, Optional |
|
|
|
from omagent_core.engine.configuration.settings.authentication_settings import \ |
|
AuthenticationSettings |
|
from pydantic import Field |
|
from pydantic_settings import BaseSettings |
|
|
|
AAAS_TEMPLATE_CONFIG = { |
|
"name": "AaasConfig", |
|
"base_url": { |
|
"value": "http://localhost:30002", |
|
"description": "The aaas task server API endpoint", |
|
"env_var": "AAAS_TASK_SERVER_URL", |
|
}, |
|
"token": { |
|
"value": None, |
|
"description": "The authorization token", |
|
"env_var": "AAAS_TOKEN", |
|
}, |
|
"enable": { |
|
"value": True, |
|
"description": "Whether to enable the aaas task server", |
|
"env_var": "AAAS_ENABLE", |
|
}, |
|
"domain_token": { |
|
"value": None, |
|
"description": "The domain token", |
|
"env_var": "DOMAIN_TOKEN", |
|
}, |
|
"is_prod": { |
|
"value": False, |
|
"description": "Whether it is a production environment", |
|
"env_var": "IS_PROD", |
|
} |
|
} |
|
|
|
|
|
class AaasConfig(BaseSettings): |
|
class Config: |
|
"""Configuration for this pydantic object.""" |
|
|
|
extra = "allow" |
|
|
|
base_url: str = Field( |
|
default="http://localhost:30002", description="The aaas task server API endpoint" |
|
) |
|
token: Optional[str] = Field( |
|
default=None, |
|
description="The authorization token", |
|
) |
|
enable: bool = Field( |
|
default=True, |
|
description="Whether to enable the aaas task server", |
|
) |
|
domain_token: Optional[str] = Field( |
|
default=None, |
|
description="The domain token", |
|
) |
|
is_prod: bool = Field( |
|
default=False, |
|
description="Whether it is a production environment", |
|
) |
|
|
|
def model_post_init(self, __context: Any) -> None: |
|
self.host = self.base_url + "/api" |
|
|