Skip to content

Commit 3746196

Browse files
fix datetime
1 parent 5e69184 commit 3746196

File tree

2 files changed

+5
-21
lines changed

2 files changed

+5
-21
lines changed

packages/common-library/src/common_library/pydantic_validators.py

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,6 @@
55
from pydantic import TypeAdapter, field_validator
66

77

8-
def validate_legacy_datetime_str(v: str | dt.datetime) -> dt.datetime:
9-
if isinstance(v, dt.datetime):
10-
return v
11-
try:
12-
return dt.datetime.fromisoformat(v)
13-
except ValueError:
14-
pass
15-
16-
try:
17-
return dt.datetime.strptime(v, "%Y-%m-%d %H:%M:%S.%f%z")
18-
except ValueError:
19-
raise ValueError("Timestamp must be in a recognized datetime format")
20-
21-
228
def _validate_legacy_timedelta_str(time_str: str | dt.timedelta) -> str | dt.timedelta:
239
if not isinstance(time_str, str):
2410
return time_str

services/director-v2/src/simcore_service_director_v2/models/comp_tasks.py

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import datetime as dt
22
from contextlib import suppress
3-
from typing import Annotated, Any
3+
from typing import Any
44

5-
from common_library.pydantic_validators import validate_legacy_datetime_str
65
from dask_task_models_library.container_tasks.protocol import ContainerEnvsDict
76
from models_library.api_schemas_directorv2.services import NodeRequirements
87
from models_library.basic_regex import SIMPLE_VERSION_RE
@@ -17,7 +16,6 @@
1716
from models_library.services_resources import BootMode
1817
from pydantic import (
1918
BaseModel,
20-
BeforeValidator,
2119
ByteSize,
2220
ConfigDict,
2321
Field,
@@ -146,8 +144,8 @@ class CompTaskAtDB(BaseModel):
146144
last_heartbeat: dt.datetime | None = Field(
147145
..., description="Last time the running task was checked by the backend"
148146
)
149-
created: Annotated[dt.datetime, BeforeValidator(validate_legacy_datetime_str)]
150-
modified: Annotated[dt.datetime, BeforeValidator(validate_legacy_datetime_str)]
147+
created: dt.datetime
148+
modified: dt.datetime
151149
# Additional information about price and hardware (ex. AWS EC2 instance type)
152150
pricing_info: dict | None
153151
hardware_info: HardwareInfo
@@ -234,8 +232,8 @@ def to_db_model(self, **exclusion_rules) -> dict[str, Any]:
234232
"state": "NOT_STARTED",
235233
"progress": 0.44,
236234
"last_heartbeat": None,
237-
"created": "2022-05-20 13:28:31.139+00",
238-
"modified": "2023-06-23 15:58:32.833081+00",
235+
"created": "2022-05-20 13:28:31.139",
236+
"modified": "2023-06-23 15:58:32.833081",
239237
"pricing_info": {
240238
"pricing_plan_id": 1,
241239
"pricing_unit_id": 1,

0 commit comments

Comments
 (0)