Skip to content

Commit 6cd0fa4

Browse files
Generate mongodbflex
1 parent b3be77c commit 6cd0fa4

6 files changed

Lines changed: 98 additions & 7 deletions

File tree

‎services/mongodbflex/oas_commit‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9873a8f7a4120017699e43baba2e8b2af7bca93e
1+
c9fb47b3087043293b6f77e5d3b778784de27ef2

‎services/mongodbflex/src/stackit/mongodbflex/__init__.py‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@
7171
"SlowQuery",
7272
"Storage",
7373
"StorageRange",
74+
"StorageUpdate",
7475
"SuggestedIndex",
7576
"UpdateBackupSchedulePayload",
7677
"UpdateInstancePayload",
@@ -193,6 +194,7 @@
193194
from stackit.mongodbflex.models.slow_query import SlowQuery as SlowQuery
194195
from stackit.mongodbflex.models.storage import Storage as Storage
195196
from stackit.mongodbflex.models.storage_range import StorageRange as StorageRange
197+
from stackit.mongodbflex.models.storage_update import StorageUpdate as StorageUpdate
196198
from stackit.mongodbflex.models.suggested_index import SuggestedIndex as SuggestedIndex
197199
from stackit.mongodbflex.models.update_backup_schedule_payload import (
198200
UpdateBackupSchedulePayload as UpdateBackupSchedulePayload,

‎services/mongodbflex/src/stackit/mongodbflex/models/__init__.py‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@
6767
from stackit.mongodbflex.models.slow_query import SlowQuery
6868
from stackit.mongodbflex.models.storage import Storage
6969
from stackit.mongodbflex.models.storage_range import StorageRange
70+
from stackit.mongodbflex.models.storage_update import StorageUpdate
7071
from stackit.mongodbflex.models.suggested_index import SuggestedIndex
7172
from stackit.mongodbflex.models.update_backup_schedule_payload import (
7273
UpdateBackupSchedulePayload,

‎services/mongodbflex/src/stackit/mongodbflex/models/partial_update_instance_payload.py‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
from typing_extensions import Annotated, Self
2525

2626
from stackit.mongodbflex.models.acl import ACL
27-
from stackit.mongodbflex.models.storage import Storage
27+
from stackit.mongodbflex.models.storage_update import StorageUpdate
2828

2929

3030
class PartialUpdateInstancePayload(BaseModel):
@@ -39,7 +39,7 @@ class PartialUpdateInstancePayload(BaseModel):
3939
name: Optional[Annotated[str, Field(min_length=3, strict=True, max_length=63)]] = None
4040
options: Optional[Dict[str, StrictStr]] = None
4141
replicas: Optional[StrictInt] = None
42-
storage: Optional[Storage] = None
42+
storage: Optional[StorageUpdate] = None
4343
version: Optional[StrictStr] = None
4444
__properties: ClassVar[List[str]] = [
4545
"acl",
@@ -129,7 +129,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
129129
"name": obj.get("name"),
130130
"options": obj.get("options"),
131131
"replicas": obj.get("replicas"),
132-
"storage": Storage.from_dict(obj["storage"]) if obj.get("storage") is not None else None,
132+
"storage": StorageUpdate.from_dict(obj["storage"]) if obj.get("storage") is not None else None,
133133
"version": obj.get("version"),
134134
}
135135
)
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
# coding: utf-8
2+
3+
"""
4+
STACKIT MongoDB Service API
5+
6+
This is the documentation for the STACKIT MongoDB Flex Service API
7+
8+
The version of the OpenAPI document: 2.0.0
9+
Contact: support@stackit.cloud
10+
Generated by OpenAPI Generator (https://openapi-generator.tech)
11+
12+
Do not edit the class manually.
13+
""" # noqa: E501
14+
15+
from __future__ import annotations
16+
17+
import json
18+
import pprint
19+
from typing import Any, ClassVar, Dict, List, Optional, Set
20+
21+
from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
22+
from pydantic_core import to_jsonable_python
23+
from typing_extensions import Self
24+
25+
26+
class StorageUpdate(BaseModel):
27+
"""
28+
StorageUpdate
29+
""" # noqa: E501
30+
31+
var_class: Optional[StrictStr] = Field(
32+
default=None,
33+
description="DEPRECATED: Starting November 2026, the API will reject requests that attempt to modify the storage class.",
34+
alias="class",
35+
)
36+
size: Optional[StrictInt] = None
37+
__properties: ClassVar[List[str]] = ["class", "size"]
38+
39+
model_config = ConfigDict(
40+
validate_by_name=True,
41+
validate_by_alias=True,
42+
validate_assignment=True,
43+
protected_namespaces=(),
44+
)
45+
46+
def to_str(self) -> str:
47+
"""Returns the string representation of the model using alias"""
48+
return pprint.pformat(self.model_dump(by_alias=True))
49+
50+
def to_json(self) -> str:
51+
"""Returns the JSON representation of the model using alias"""
52+
return json.dumps(to_jsonable_python(self.to_dict()))
53+
54+
@classmethod
55+
def from_json(cls, json_str: str) -> Optional[Self]:
56+
"""Create an instance of StorageUpdate from a JSON string"""
57+
return cls.from_dict(json.loads(json_str))
58+
59+
def to_dict(self) -> Dict[str, Any]:
60+
"""Return the dictionary representation of the model using alias.
61+
62+
This has the following differences from calling pydantic's
63+
`self.model_dump(by_alias=True)`:
64+
65+
* `None` is only added to the output dict for nullable fields that
66+
were set at model initialization. Other fields with value `None`
67+
are ignored.
68+
"""
69+
excluded_fields: Set[str] = set([])
70+
71+
_dict = self.model_dump(
72+
by_alias=True,
73+
exclude=excluded_fields,
74+
exclude_none=True,
75+
)
76+
return _dict
77+
78+
@classmethod
79+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
80+
"""Create an instance of StorageUpdate from a dict"""
81+
if obj is None:
82+
return None
83+
84+
if not isinstance(obj, dict):
85+
return cls.model_validate(obj)
86+
87+
_obj = cls.model_validate({"class": obj.get("class"), "size": obj.get("size")})
88+
return _obj

‎services/mongodbflex/src/stackit/mongodbflex/models/update_instance_payload.py‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
from typing_extensions import Annotated, Self
2525

2626
from stackit.mongodbflex.models.acl import ACL
27-
from stackit.mongodbflex.models.storage import Storage
27+
from stackit.mongodbflex.models.storage_update import StorageUpdate
2828

2929

3030
class UpdateInstancePayload(BaseModel):
@@ -39,7 +39,7 @@ class UpdateInstancePayload(BaseModel):
3939
name: Annotated[str, Field(min_length=3, strict=True, max_length=63)]
4040
options: Dict[str, StrictStr]
4141
replicas: StrictInt
42-
storage: Storage
42+
storage: StorageUpdate
4343
version: StrictStr
4444
__properties: ClassVar[List[str]] = [
4545
"acl",
@@ -126,7 +126,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
126126
"name": obj.get("name"),
127127
"options": obj.get("options"),
128128
"replicas": obj.get("replicas"),
129-
"storage": Storage.from_dict(obj["storage"]) if obj.get("storage") is not None else None,
129+
"storage": StorageUpdate.from_dict(obj["storage"]) if obj.get("storage") is not None else None,
130130
"version": obj.get("version"),
131131
}
132132
)

0 commit comments

Comments
 (0)