File size: 1,048 Bytes
a0e37e2
 
ef088c2
a0e37e2
 
 
 
 
 
ef088c2
 
 
a0e37e2
 
 
 
 
 
ef088c2
 
a0e37e2
 
bdb86a2
 
 
a0e37e2
bea5044
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
from dataclasses import dataclass, field

from ask_candid.base.config.base import _load_value


@dataclass
class BaseElasticSearchConnection:
    """Elasticsearch connection dataclass
    """
    url: str | None = field(default_factory=str)
    username: str | None = field(default_factory=str)
    password: str | None = field(default_factory=str)


@dataclass
class BaseElasticAPIKeyCredential:
    """Cloud ID/API key data class
    """
    cloud_id: str | None = field(default_factory=str)
    api_key: str | None = field(default_factory=str)


SEMANTIC_ELASTIC_QA = BaseElasticAPIKeyCredential(
    cloud_id=_load_value("SEMANTIC_ELASTIC_CLOUD_ID"),
    api_key=_load_value("SEMANTIC_ELASTIC_API_KEY"),
)

SEMANTIC_ELASTIC_QA_WRITER = BaseElasticAPIKeyCredential(
    cloud_id=_load_value("SEMANTIC_ELASTIC_WRITER_CLOUD_ID"),
    api_key=_load_value("SEMANTIC_ELASTIC_WRITER_API_KEY"),
)

NEWS_ELASTIC = BaseElasticSearchConnection(
    url=_load_value("NEWS_URL"),
    username=_load_value("NEWS_UID"),
    password=_load_value("NEWS_PWD")
)