Skip to content

Commit 4e49d2d

Browse files
fix endopoints type
1 parent ca36539 commit 4e49d2d

File tree

3 files changed

+17
-8
lines changed

3 files changed

+17
-8
lines changed

packages/settings-library/requirements/dev.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
# installs this repo's packages
1515
--editable ../pytest-simcore/
16+
--editable ../models-library
1617

1718
# current module
1819
--editable .

packages/settings-library/src/settings_library/ec2.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,18 @@
1-
from pydantic import AnyHttpUrl, Field
1+
from typing import Annotated
2+
3+
from pydantic import AnyHttpUrl, BeforeValidator, Field, TypeAdapter
24
from pydantic_settings import SettingsConfigDict
35

46
from .base import BaseCustomSettings
57

8+
ANY_HTTP_URL_ADAPTER: TypeAdapter = TypeAdapter(AnyHttpUrl)
9+
610

711
class EC2Settings(BaseCustomSettings):
812
EC2_ACCESS_KEY_ID: str
9-
EC2_ENDPOINT: AnyHttpUrl | None = Field(
10-
default=None, description="do not define if using standard AWS"
11-
)
13+
EC2_ENDPOINT: Annotated[
14+
str, BeforeValidator(lambda x: str(ANY_HTTP_URL_ADAPTER.validate_python(x)))
15+
] | None = Field(default=None, description="do not define if using standard AWS")
1216
EC2_REGION_NAME: str = "us-east-1"
1317
EC2_SECRET_ACCESS_KEY: str
1418

packages/settings-library/src/settings_library/s3.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
1-
from pydantic import AnyHttpUrl, Field
1+
from typing import Annotated
2+
3+
from pydantic import AnyHttpUrl, BeforeValidator, Field, TypeAdapter
24
from pydantic_settings import SettingsConfigDict
35

46
from .base import BaseCustomSettings
57
from .basic_types import IDStr
68

9+
ANY_HTTP_URL_ADAPTER: TypeAdapter = TypeAdapter(AnyHttpUrl)
10+
711

812
class S3Settings(BaseCustomSettings):
913
S3_ACCESS_KEY: IDStr
1014
S3_BUCKET_NAME: IDStr
11-
S3_ENDPOINT: AnyHttpUrl | None = Field(
12-
default=None, description="do not define if using standard AWS"
13-
)
15+
S3_ENDPOINT: Annotated[
16+
str, BeforeValidator(lambda x: str(ANY_HTTP_URL_ADAPTER.validate_python(x)))
17+
] | None = Field(default=None, description="do not define if using standard AWS")
1418
S3_REGION: IDStr
1519
S3_SECRET_KEY: IDStr
1620

0 commit comments

Comments
 (0)