diff --git a/services/logme/oas_commit b/services/logme/oas_commit index e3713dde3..72dcff29c 100644 --- a/services/logme/oas_commit +++ b/services/logme/oas_commit @@ -1 +1 @@ -0e64886dd0847341800d7191ed193b75413be998 +0867dbbb09a8032415dc6debe18bc392bd58ba42 diff --git a/services/logme/src/stackit/logme/api/default_api.py b/services/logme/src/stackit/logme/api/default_api.py index 7fd1ba875..5f455bd82 100644 --- a/services/logme/src/stackit/logme/api/default_api.py +++ b/services/logme/src/stackit/logme/api/default_api.py @@ -1332,7 +1332,7 @@ def download_backup( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> bytearray: + ) -> bytes: """download backup @@ -1375,7 +1375,7 @@ def download_backup( ) _response_types_map: Dict[str, Optional[str]] = { - "200": "bytearray", + "200": "bytes", "500": "Error", } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -1400,7 +1400,7 @@ def download_backup_with_http_info( _content_type: Optional[StrictStr] = None, _headers: Optional[Dict[StrictStr, Any]] = None, _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, - ) -> ApiResponse[bytearray]: + ) -> ApiResponse[bytes]: """download backup @@ -1443,7 +1443,7 @@ def download_backup_with_http_info( ) _response_types_map: Dict[str, Optional[str]] = { - "200": "bytearray", + "200": "bytes", "500": "Error", } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -1511,7 +1511,7 @@ def download_backup_without_preload_content( ) _response_types_map: Dict[str, Optional[str]] = { - "200": "bytearray", + "200": "bytes", "500": "Error", } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) diff --git a/services/logme/src/stackit/logme/api_client.py b/services/logme/src/stackit/logme/api_client.py index 20ed13664..0edc33a3a 100644 --- a/services/logme/src/stackit/logme/api_client.py +++ b/services/logme/src/stackit/logme/api_client.py @@ -66,6 +66,7 @@ class ApiClient: "date": datetime.date, "datetime": datetime.datetime, "decimal": decimal.Decimal, + "UUID": uuid.UUID, "object": object, } _pool = None @@ -265,7 +266,7 @@ def response_deserialize( response_text = None return_data = None try: - if response_type == "bytearray": + if response_type in ("bytearray", "bytes"): return_data = response_data.data elif response_type == "file": return_data = self.__deserialize_file(response_data) @@ -326,25 +327,20 @@ def sanitize_for_serialization(self, obj): return obj.isoformat() elif isinstance(obj, decimal.Decimal): return str(obj) - elif isinstance(obj, dict): - obj_dict = obj + return {key: self.sanitize_for_serialization(val) for key, val in obj.items()} + + # Convert model obj to dict except + # attributes `openapi_types`, `attribute_map` + # and attributes which value is not None. + # Convert attribute name to json key in + # model definition for request. + if hasattr(obj, "to_dict") and callable(getattr(obj, "to_dict")): + obj_dict = obj.to_dict() else: - # Convert model obj to dict except - # attributes `openapi_types`, `attribute_map` - # and attributes which value is not None. - # Convert attribute name to json key in - # model definition for request. - if hasattr(obj, "to_dict") and callable(getattr(obj, "to_dict")): # noqa: B009 - obj_dict = obj.to_dict() - else: - obj_dict = obj.__dict__ - - if isinstance(obj_dict, list): - # here we handle instances that can either be a list or something else, and only became a real list by calling to_dict() # noqa: E501 - return self.sanitize_for_serialization(obj_dict) + obj_dict = obj.__dict__ - return {key: self.sanitize_for_serialization(val) for key, val in obj_dict.items()} + return self.sanitize_for_serialization(obj_dict) def deserialize(self, response_text: str, response_type: str, content_type: Optional[str]): """Deserializes response into an object. @@ -417,6 +413,8 @@ def __deserialize(self, data, klass): return self.__deserialize_datetime(data) elif klass is decimal.Decimal: return decimal.Decimal(data) + elif klass is uuid.UUID: + return uuid.UUID(data) elif issubclass(klass, Enum): return self.__deserialize_enum(data, klass) else: diff --git a/services/logme/src/stackit/logme/models/backup.py b/services/logme/src/stackit/logme/models/backup.py index 86c5974de..63de1cc03 100644 --- a/services/logme/src/stackit/logme/models/backup.py +++ b/services/logme/src/stackit/logme/models/backup.py @@ -24,6 +24,7 @@ StrictInt, StrictStr, ) +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -41,7 +42,8 @@ class Backup(BaseModel): __properties: ClassVar[List[str]] = ["downloadable", "finished_at", "id", "size", "status", "triggered_at"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -52,8 +54,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/create_backup_response_item.py b/services/logme/src/stackit/logme/models/create_backup_response_item.py index bd4005966..865c19e9b 100644 --- a/services/logme/src/stackit/logme/models/create_backup_response_item.py +++ b/services/logme/src/stackit/logme/models/create_backup_response_item.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -31,7 +32,8 @@ class CreateBackupResponseItem(BaseModel): __properties: ClassVar[List[str]] = ["id", "message"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -42,8 +44,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/create_instance_payload.py b/services/logme/src/stackit/logme/models/create_instance_payload.py index 0c3ae8be6..22dd48b5f 100644 --- a/services/logme/src/stackit/logme/models/create_instance_payload.py +++ b/services/logme/src/stackit/logme/models/create_instance_payload.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, Field, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.instance_parameters import InstanceParameters @@ -34,7 +35,8 @@ class CreateInstancePayload(BaseModel): __properties: ClassVar[List[str]] = ["instanceName", "parameters", "planId"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -45,8 +47,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/create_instance_response.py b/services/logme/src/stackit/logme/models/create_instance_response.py index 039d82df8..90a948e62 100644 --- a/services/logme/src/stackit/logme/models/create_instance_response.py +++ b/services/logme/src/stackit/logme/models/create_instance_response.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, Field, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -30,7 +31,8 @@ class CreateInstanceResponse(BaseModel): __properties: ClassVar[List[str]] = ["instanceId"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -41,8 +43,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/credentials.py b/services/logme/src/stackit/logme/models/credentials.py index ebc5bdf1d..d8c3ad702 100644 --- a/services/logme/src/stackit/logme/models/credentials.py +++ b/services/logme/src/stackit/logme/models/credentials.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -35,7 +36,8 @@ class Credentials(BaseModel): __properties: ClassVar[List[str]] = ["host", "password", "port", "syslog_drain_url", "uri", "username"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -46,8 +48,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/credentials_list_item.py b/services/logme/src/stackit/logme/models/credentials_list_item.py index 0b4d196fb..e7a3284d6 100644 --- a/services/logme/src/stackit/logme/models/credentials_list_item.py +++ b/services/logme/src/stackit/logme/models/credentials_list_item.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -30,7 +31,8 @@ class CredentialsListItem(BaseModel): __properties: ClassVar[List[str]] = ["id"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -41,8 +43,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/credentials_response.py b/services/logme/src/stackit/logme/models/credentials_response.py index d4e95c95d..d6f09cd5f 100644 --- a/services/logme/src/stackit/logme/models/credentials_response.py +++ b/services/logme/src/stackit/logme/models/credentials_response.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.raw_credentials import RawCredentials @@ -34,7 +35,8 @@ class CredentialsResponse(BaseModel): __properties: ClassVar[List[str]] = ["id", "raw", "uri"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -45,8 +47,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/error.py b/services/logme/src/stackit/logme/models/error.py index 670059b3d..bb4935bcc 100644 --- a/services/logme/src/stackit/logme/models/error.py +++ b/services/logme/src/stackit/logme/models/error.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -31,7 +32,8 @@ class Error(BaseModel): __properties: ClassVar[List[str]] = ["description", "error"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -42,8 +44,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/get_metrics_response.py b/services/logme/src/stackit/logme/models/get_metrics_response.py index f8fb1505b..906ddb243 100644 --- a/services/logme/src/stackit/logme/models/get_metrics_response.py +++ b/services/logme/src/stackit/logme/models/get_metrics_response.py @@ -26,6 +26,7 @@ StrictInt, StrictStr, ) +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -86,7 +87,8 @@ class GetMetricsResponse(BaseModel): ] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -97,8 +99,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/instance.py b/services/logme/src/stackit/logme/models/instance.py index bf3be3548..9ef2c05fa 100644 --- a/services/logme/src/stackit/logme/models/instance.py +++ b/services/logme/src/stackit/logme/models/instance.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.instance_last_operation import InstanceLastOperation @@ -72,7 +73,8 @@ def status_validate_enum(cls, value): return value model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -83,8 +85,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/instance_last_operation.py b/services/logme/src/stackit/logme/models/instance_last_operation.py index 8eef57f3f..333a6ac03 100644 --- a/services/logme/src/stackit/logme/models/instance_last_operation.py +++ b/services/logme/src/stackit/logme/models/instance_last_operation.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictStr, field_validator +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -46,7 +47,8 @@ def type_validate_enum(cls, value): return value model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -57,8 +59,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/instance_parameters.py b/services/logme/src/stackit/logme/models/instance_parameters.py index 46b705ed1..da5a4d3f4 100644 --- a/services/logme/src/stackit/logme/models/instance_parameters.py +++ b/services/logme/src/stackit/logme/models/instance_parameters.py @@ -27,6 +27,7 @@ StrictStr, field_validator, ) +from pydantic_core import to_jsonable_python from typing_extensions import Annotated, Self from stackit.logme.models.instance_parameters_groks_inner import ( @@ -122,7 +123,8 @@ def opensearch_tls_ciphers_validate_enum(cls, value): return value model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -133,8 +135,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/instance_parameters_groks_inner.py b/services/logme/src/stackit/logme/models/instance_parameters_groks_inner.py index 646771da5..99b458d6e 100644 --- a/services/logme/src/stackit/logme/models/instance_parameters_groks_inner.py +++ b/services/logme/src/stackit/logme/models/instance_parameters_groks_inner.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -30,7 +31,8 @@ class InstanceParametersGroksInner(BaseModel): __properties: ClassVar[List[str]] = ["pattern"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -41,8 +43,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/instance_schema.py b/services/logme/src/stackit/logme/models/instance_schema.py index 03b54ddbc..25962571b 100644 --- a/services/logme/src/stackit/logme/models/instance_schema.py +++ b/services/logme/src/stackit/logme/models/instance_schema.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.model_schema import ModelSchema @@ -33,7 +34,8 @@ class InstanceSchema(BaseModel): __properties: ClassVar[List[str]] = ["create", "update"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -44,8 +46,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/list_backups_response.py b/services/logme/src/stackit/logme/models/list_backups_response.py index 79cac1404..9b038bc85 100644 --- a/services/logme/src/stackit/logme/models/list_backups_response.py +++ b/services/logme/src/stackit/logme/models/list_backups_response.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, Field +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.backup import Backup @@ -32,7 +33,8 @@ class ListBackupsResponse(BaseModel): __properties: ClassVar[List[str]] = ["instanceBackups"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -43,8 +45,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/list_credentials_response.py b/services/logme/src/stackit/logme/models/list_credentials_response.py index 5d518b6a7..5eba81f3f 100644 --- a/services/logme/src/stackit/logme/models/list_credentials_response.py +++ b/services/logme/src/stackit/logme/models/list_credentials_response.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, Field +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.credentials_list_item import CredentialsListItem @@ -32,7 +33,8 @@ class ListCredentialsResponse(BaseModel): __properties: ClassVar[List[str]] = ["credentialsList"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -43,8 +45,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/list_instances_response.py b/services/logme/src/stackit/logme/models/list_instances_response.py index 8cb59feb6..dcfd0efff 100644 --- a/services/logme/src/stackit/logme/models/list_instances_response.py +++ b/services/logme/src/stackit/logme/models/list_instances_response.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.instance import Instance @@ -32,7 +33,8 @@ class ListInstancesResponse(BaseModel): __properties: ClassVar[List[str]] = ["instances"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -43,8 +45,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/list_offerings_response.py b/services/logme/src/stackit/logme/models/list_offerings_response.py index 52c92faa4..3b35edd05 100644 --- a/services/logme/src/stackit/logme/models/list_offerings_response.py +++ b/services/logme/src/stackit/logme/models/list_offerings_response.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.offering import Offering @@ -32,7 +33,8 @@ class ListOfferingsResponse(BaseModel): __properties: ClassVar[List[str]] = ["offerings"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -43,8 +45,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/list_restores_response.py b/services/logme/src/stackit/logme/models/list_restores_response.py index ca9bcaa54..65257fd9a 100644 --- a/services/logme/src/stackit/logme/models/list_restores_response.py +++ b/services/logme/src/stackit/logme/models/list_restores_response.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, Field +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.restore import Restore @@ -32,7 +33,8 @@ class ListRestoresResponse(BaseModel): __properties: ClassVar[List[str]] = ["instanceRestores"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -43,8 +45,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/model_schema.py b/services/logme/src/stackit/logme/models/model_schema.py index 4279fdc9c..26290f58b 100644 --- a/services/logme/src/stackit/logme/models/model_schema.py +++ b/services/logme/src/stackit/logme/models/model_schema.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -30,7 +31,8 @@ class ModelSchema(BaseModel): __properties: ClassVar[List[str]] = ["parameters"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -41,8 +43,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/offering.py b/services/logme/src/stackit/logme/models/offering.py index c7e52c8d7..25d137e4d 100644 --- a/services/logme/src/stackit/logme/models/offering.py +++ b/services/logme/src/stackit/logme/models/offering.py @@ -25,6 +25,7 @@ StrictInt, StrictStr, ) +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.instance_schema import InstanceSchema @@ -60,7 +61,8 @@ class Offering(BaseModel): ] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -71,8 +73,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/partial_update_instance_payload.py b/services/logme/src/stackit/logme/models/partial_update_instance_payload.py index fec483b25..0f97098c7 100644 --- a/services/logme/src/stackit/logme/models/partial_update_instance_payload.py +++ b/services/logme/src/stackit/logme/models/partial_update_instance_payload.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, Field, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.instance_parameters import InstanceParameters @@ -34,7 +35,8 @@ class PartialUpdateInstancePayload(BaseModel): __properties: ClassVar[List[str]] = ["instanceName", "parameters", "planId"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -45,8 +47,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/plan.py b/services/logme/src/stackit/logme/models/plan.py index 46ba0e4bb..deae94728 100644 --- a/services/logme/src/stackit/logme/models/plan.py +++ b/services/logme/src/stackit/logme/models/plan.py @@ -24,6 +24,7 @@ StrictBool, StrictStr, ) +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -40,7 +41,8 @@ class Plan(BaseModel): __properties: ClassVar[List[str]] = ["description", "free", "id", "name", "skuName"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -51,8 +53,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/raw_credentials.py b/services/logme/src/stackit/logme/models/raw_credentials.py index 4c03016e0..b3f07600f 100644 --- a/services/logme/src/stackit/logme/models/raw_credentials.py +++ b/services/logme/src/stackit/logme/models/raw_credentials.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict +from pydantic_core import to_jsonable_python from typing_extensions import Self from stackit.logme.models.credentials import Credentials @@ -32,7 +33,8 @@ class RawCredentials(BaseModel): __properties: ClassVar[List[str]] = ["credentials"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -43,8 +45,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/restore.py b/services/logme/src/stackit/logme/models/restore.py index fddf8b7b0..82f2a7ff5 100644 --- a/services/logme/src/stackit/logme/models/restore.py +++ b/services/logme/src/stackit/logme/models/restore.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -34,7 +35,8 @@ class Restore(BaseModel): __properties: ClassVar[List[str]] = ["backup_id", "finished_at", "id", "status", "triggered_at"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -45,8 +47,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/trigger_restore_response.py b/services/logme/src/stackit/logme/models/trigger_restore_response.py index 58d7e8c65..2dd02194a 100644 --- a/services/logme/src/stackit/logme/models/trigger_restore_response.py +++ b/services/logme/src/stackit/logme/models/trigger_restore_response.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictInt +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -30,7 +31,8 @@ class TriggerRestoreResponse(BaseModel): __properties: ClassVar[List[str]] = ["id"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -41,8 +43,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/update_backups_config_payload.py b/services/logme/src/stackit/logme/models/update_backups_config_payload.py index 4290dce1d..43e31aa9f 100644 --- a/services/logme/src/stackit/logme/models/update_backups_config_payload.py +++ b/services/logme/src/stackit/logme/models/update_backups_config_payload.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -30,7 +31,8 @@ class UpdateBackupsConfigPayload(BaseModel): __properties: ClassVar[List[str]] = ["encryption_key"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -41,8 +43,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: diff --git a/services/logme/src/stackit/logme/models/update_backups_config_response.py b/services/logme/src/stackit/logme/models/update_backups_config_response.py index 7175b5b65..f314ad757 100644 --- a/services/logme/src/stackit/logme/models/update_backups_config_response.py +++ b/services/logme/src/stackit/logme/models/update_backups_config_response.py @@ -18,6 +18,7 @@ from typing import Any, ClassVar, Dict, List, Optional, Set from pydantic import BaseModel, ConfigDict, StrictStr +from pydantic_core import to_jsonable_python from typing_extensions import Self @@ -30,7 +31,8 @@ class UpdateBackupsConfigResponse(BaseModel): __properties: ClassVar[List[str]] = ["message"] model_config = ConfigDict( - populate_by_name=True, + validate_by_name=True, + validate_by_alias=True, validate_assignment=True, protected_namespaces=(), ) @@ -41,8 +43,7 @@ def to_str(self) -> str: def to_json(self) -> str: """Returns the JSON representation of the model using alias""" - # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead - return json.dumps(self.to_dict()) + return json.dumps(to_jsonable_python(self.to_dict())) @classmethod def from_json(cls, json_str: str) -> Optional[Self]: