Skip to content

Commit a0f969a

Browse files
Merge branch 'main' into generator-bot-23059610336/modelserving
2 parents 1d935e0 + a278248 commit a0f969a

File tree

308 files changed

+2507
-1446
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

308 files changed

+2507
-1446
lines changed

CHANGELOG.md

Lines changed: 107 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,18 @@
11
## Release (2026-xx-xx)
22

3-
- `serviceaccount`: [v0.6.0](services/kms/CHANGELOG.md#v060)
4-
- **Breaking Change:** rename `CreateFederatedIdentityProviderResponse` to `FederatedIdentityProvider` and update file path accordingly
5-
- **Breaking Change:** rename `CreateFederatedIdentityProviderResponseAssertionsInner` to `FederatedIdentityProviderAssertionsInner` and update file path accordingly
6-
- **Feature:** add `id` for `FederatedIdentityProvider`
3+
- `serviceaccount`:
4+
- [v0.6.1](services/serviceaccount/CHANGELOG.md#v061)
5+
- **Feature:** client now supports UUID and decimal types
6+
- **Bugfix:** timeouts now passed to requests library
7+
- [v0.6.0](services/kms/CHANGELOG.md#v060)
8+
- **Breaking Change:** rename `CreateFederatedIdentityProviderResponse` to `FederatedIdentityProvider` and update file path accordingly
9+
- **Breaking Change:** rename `CreateFederatedIdentityProviderResponseAssertionsInner` to `FederatedIdentityProviderAssertionsInner` and update file path accordingly
10+
- **Feature:** add `id` for `FederatedIdentityProvider`
11+
- `ske`: [v1.7.0](services/ske/CHANGELOG.md#v170)
12+
- **Feature:** New model `Access`
13+
- **Feature:** New model `IDPKubeconfig`
14+
- **Feature:** Add attribute `access` of type `Access` to model `Cluster`
15+
- **Feature:** New API client methods: `get_idp_kubeconfig`, `get_idp_kubeconfig_with_http_info`, `get_idp_kubeconfig_without_preload_content`, `_get_idp_kubeconfig_serialize`
716
- `kms`: [v0.8.0](services/kms/CHANGELOG.md#v080)
817
- **Breaking Change:** Switch from regional to global API server URL (region can't be set via `Configuration` / env-variable anymore).
918
- `intake`: [v0.5.0](services/intake/CHANGELOG.md#v050)
@@ -20,60 +29,106 @@
2029
- **Breaking change:** Renamed `TargetPoolTlsConfig` to `TlsConfig`
2130
- `loadbalancer`: [v0.9.0](services/loadbalancer/CHANGELOG.md#v090)
2231
- **Feature:** Add new fields `AltPort` and `HttpHealthCheck` to `ActiveHealthCheck`
32+
- `opensearch`: [v1.2.2](services/opensearch/CHANGELOG.md#v122)
33+
- **Feature:** client now supports UUID and decimal types
34+
- **Bugfix:** timeouts now passed to requests library
35+
- `postresflex`: [v1.2.1](services/postgresflex/CHANGELOG.md#v121)
36+
- **Feature:** client now supports UUID and decimal types
37+
- **Bugfix:** timeouts now passed to requests library
38+
- `rabbitmq`: [v0.4.1](services/rabbitmq/CHANGELOG.md#v041)
39+
- **Feature:** client now supports UUID and decimal types
40+
- **Bugfix:** timeouts now passed to requests library
41+
- `redis`: [v0.3.1](services/redis/CHANGELOG.md#v031)
42+
- **Feature:** client now supports UUID and decimal types
43+
- **Bugfix:** timeouts now passed to requests library
44+
- `resourcemanager`: [v0.7.1](services/resourcemanager/CHANGELOG.md#v071)
45+
- **Feature:** client now supports UUID and decimal types
46+
- **Bugfix:** timeouts now passed to requests library
47+
- `runcommand`: [v1.1.2](services/runcommand/CHANGELOG.md#v112)
48+
- **Feature:** client now supports UUID and decimal types
49+
- **Bugfix:** timeouts now passed to requests library
50+
- `scf`: [v0.4.1](services/scf/CHANGELOG.md#v041)
51+
- **Feature:** client now supports UUID and decimal types
52+
- **Bugfix:** timeouts now passed to requests library
2353
- `sfs`: [v0.3.0](services/sfs/CHANGELOG.md#v030)
2454
- **Breaking change:** The `name` and `spaceHardLimitGigabytes` fields are now marked as required for `ShareExportPayload`, `SharePayload`.
55+
- `secretsmanager`: [v0.4.1](services/secretsmanager/CHANGELOG.md#v041)
56+
- **Feature:** client now supports UUID and decimal types
57+
- **Bugfix:** timeouts now passed to requests library
2558
- `serviceaccount`: [v0.5.0](services/serviceaccount/CHANGELOG.md#v050)
2659
- **Feature:** add support for Federated Identity Providers
2760
- new operations: `CreateFederatedIdentityProvider`, `DeleteServiceFederatedIdentityProvider`, `ListFederatedIdentityProviders`,`PartialUpdateServiceAccountFederatedIdentityProvider`
2861
- new models: `CreateFederatedIdentityProviderPayload`, `CreateFederatedIdentityProviderPayloadAssertionsInner`, `CreateFederatedIdentityProviderResponse`, `CreateFederatedIdentityProviderResponseAssertionsInner`, `FederatedListFederatedIdentityProvidersResponse`, `PartialUpdateServiceAccountFederatedIdentityProviderPayload`
29-
- `observability`: [v0.13.0](services/observability/CHANGELOG.md#v0130)
30-
- **Feature:** manage alert records
31-
- New API client methods: `create_alert_record`, `delete_alert_record`, `delete_alert_records`, `get_alert_record`, `list_alert_records`, `update_alert_record`, `partial_update_alert_records`
32-
- New model classes: `AlertRecord`, `AlertRecordResponse`, `AlertRecordsResponse`, `CreateAlertRecordPayload`, `UpdateAlertRecordPayload`, `PartialUpdateAlertRecordsRequestInner`
33-
- **Feature:** manage alert rules
34-
- New API client methods: `get_alertrule`, `update_alertrule`, `delete_alertrule`
35-
- New model classes: `AlertRuleResponse`, `UpdateAlertrulePayload`
36-
- **Feature:** manage backups
37-
- New API client methods: `create_backup`,`create_backup_schedule`, `list_backup_retentions`, `list_backup_schedules`, `list_backups`, `restore_backup`
38-
- New model classes: `BackupResponse`, `BackupRetentionResponse`, `BackupSchedule`, `BackupSchedulePostResponse`, `BackupScheduleResponse`, `CreateBackupSchedulePayload`
39-
- **Feature:** to manage checks
40-
- MongoDB
41-
- New API client methods: `create_mongodb_check`, `delete_mongodb_check`, `list_mongodb_checks`
42-
- New model classes: `CreateMongodbCheckPayload`, `MongodbCheckChildResponse`, `MongodbCheckResponse`
43-
- RabbitMQ
44-
- New API client methods: `create_rabbitmq_check`, `delete_rabbitmq_check`, `list_rabbitmq_checks`
45-
- New model classes: `CreateRabbitmqCheckPayload`, `RabbitMQCheckChildResponse`, `RabbitmqCheckResponse`
46-
- Network
47-
- New API client methods: `list_network_checks`, `delete_network_check`, `create_network_check`
48-
- New model classes: `CreateNetworkCheckPayload`, `NetworkCheckChildResponse`, `NetworkCheckResponse`
49-
- Redis
50-
- New API client methods: `create_redis_check`, `list_redis_checks`, `delete_redis_check`
51-
- New model classes: `CreateRedisCheckPayload`, `RedisCheckChildResponse`, `RedisCheckResponse`
52-
- MySQL
53-
- New API client methods: `create_mysql_check`, `delete_mysql_check`, `list_mysql_checks`
54-
- New model classes: `CreateMysqlCheckPayload`, `MysqlCheckChildResponse`, `MysqlCheckResponse`
55-
- Ping
56-
- New API client methods: `create_ping_check`, `delete_ping_check`, `list_ping_checks`
57-
- New model classes: `CreatePingCheckPayload`, `PingCheckChildResponse`, `PingCheckResponse`
58-
- Elasticsearch
59-
- New API client methods: `create_elasticsearch_check`, `delete_elasticsearch_check`, `list_elasticsearch_checks`
60-
- New model classes: `CreateElasticsearchCheckPayload`, `ElasticsearchCheckChildResponse`, `ElasticsearchCheckResponse`
61-
- PostgreSQL
62-
- New API client methods: `create_postgresql_check`, `delete_postgresql_check`, `list_postgresql_checks`
63-
- New model classes: `CreatePostgresqlCheckPayload`, `PostgresqlCheckChildResponse`, `PostgresqlCheckResponse`
64-
- **Feature:** List offerings
65-
- New API client method: `list_offerings`
66-
- New model struct: `Offerings`
67-
- **Feature:** Manage scrape configs
68-
- New API client method: `delete_scrape_configs`, `partial_update_scrape_configs`
69-
- New model struct: `PartialUpdateScrapeConfigsRequestInner`
70-
- **Breaking changes**:
71-
- rename `CreateScrapeConfigPayloadBasicAuth` to `PartialUpdateScrapeConfigsRequestInnerBasicAuth`
72-
- rename `CreateScrapeConfigPayloadHttpSdConfigsInner` to `PartialUpdateScrapeConfigsRequestInnerHttpSdConfigsInner`
73-
- rename `CreateScrapeConfigPayloadHttpSdConfigsInnerOauth2` to `PartialUpdateScrapeConfigsRequestInnerHttpSdConfigsInnerOauth2`
74-
- rename `CreateScrapeConfigPayloadHttpSdConfigsInnerOauth2TlsConfig` to `PartialUpdateScrapeConfigsRequestInnerHttpSdConfigsInnerOauth2TlsConfig`
75-
- rename `CreateScrapeConfigPayloadMetricsRelabelConfigsInner` to `PartialUpdateScrapeConfigsRequestInnerMetricsRelabelConfigsInner`
76-
- rename `CreateScrapeConfigPayloadStaticConfigsInner` to `PartialUpdateScrapeConfigsRequestInnerStaticConfigsInner`
62+
- `serviceenablement`: [v1.1.2](services/serviceenablement/CHANGELOG.md#v112)
63+
- **Feature:** client now supports UUID and decimal types
64+
- **Bugfix:** timeouts now passed to requests library
65+
- `serverbackup`: [v1.1.2](services/serverbackup/CHANGELOG.md#v112)
66+
- **Feature:** client now supports UUID and decimal types
67+
- **Bugfix:** timeouts now passed to requests library
68+
- `serverupdate`: [v1.1.1](services/serverupdate/CHANGELOG.md#v111)
69+
- **Feature:** client now supports UUID and decimal types
70+
- **Bugfix:** timeouts now passed to requests library
71+
- `sqlserverflex`: [v1.1.2](services/sqlserverflex/CHANGELOG.md#v112)
72+
- **Feature:** client now supports UUID and decimal types
73+
- **Bugfix:** timeouts now passed to requests library
74+
- `mongodbflex`: [v1.2.3](services/mongodbflex/CHANGELOG.md#v123)
75+
- **Feature:** client now supports UUID and decimal types
76+
- **Bugfix:** timeouts now passed to requests library
77+
- `objectstorage`: [v1.2.2](services/objectstorage/CHANGELOG.md#v122)
78+
- **Feature:** client now supports UUID and decimal types
79+
- **Bugfix:** timeouts now passed to requests library
80+
- `observability`:
81+
- [v0.13.1](services/observability/CHANGELOG.md#v0131)
82+
- **Feature:** client now supports UUID and decimal types
83+
- **Bugfix:** timeouts now passed to requests library
84+
- [v0.13.0](services/observability/CHANGELOG.md#v0130)
85+
- **Feature:** manage alert records
86+
- New API client methods: `create_alert_record`, `delete_alert_record`, `delete_alert_records`, `get_alert_record`, `list_alert_records`, `update_alert_record`, `partial_update_alert_records`
87+
- New model classes: `AlertRecord`, `AlertRecordResponse`, `AlertRecordsResponse`, `CreateAlertRecordPayload`, `UpdateAlertRecordPayload`, `PartialUpdateAlertRecordsRequestInner`
88+
- **Feature:** manage alert rules
89+
- New API client methods: `get_alertrule`, `update_alertrule`, `delete_alertrule`
90+
- New model classes: `AlertRuleResponse`, `UpdateAlertrulePayload`
91+
- **Feature:** manage backups
92+
- New API client methods: `create_backup`,`create_backup_schedule`, `list_backup_retentions`, `list_backup_schedules`, `list_backups`, `restore_backup`
93+
- New model classes: `BackupResponse`, `BackupRetentionResponse`, `BackupSchedule`, `BackupSchedulePostResponse`, `BackupScheduleResponse`, `CreateBackupSchedulePayload`
94+
- **Feature:** to manage checks
95+
- MongoDB
96+
- New API client methods: `create_mongodb_check`, `delete_mongodb_check`, `list_mongodb_checks`
97+
- New model classes: `CreateMongodbCheckPayload`, `MongodbCheckChildResponse`, `MongodbCheckResponse`
98+
- RabbitMQ
99+
- New API client methods: `create_rabbitmq_check`, `delete_rabbitmq_check`, `list_rabbitmq_checks`
100+
- New model classes: `CreateRabbitmqCheckPayload`, `RabbitMQCheckChildResponse`, `RabbitmqCheckResponse`
101+
- Network
102+
- New API client methods: `list_network_checks`, `delete_network_check`, `create_network_check`
103+
- New model classes: `CreateNetworkCheckPayload`, `NetworkCheckChildResponse`, `NetworkCheckResponse`
104+
- Redis
105+
- New API client methods: `create_redis_check`, `list_redis_checks`, `delete_redis_check`
106+
- New model classes: `CreateRedisCheckPayload`, `RedisCheckChildResponse`, `RedisCheckResponse`
107+
- MySQL
108+
- New API client methods: `create_mysql_check`, `delete_mysql_check`, `list_mysql_checks`
109+
- New model classes: `CreateMysqlCheckPayload`, `MysqlCheckChildResponse`, `MysqlCheckResponse`
110+
- Ping
111+
- New API client methods: `create_ping_check`, `delete_ping_check`, `list_ping_checks`
112+
- New model classes: `CreatePingCheckPayload`, `PingCheckChildResponse`, `PingCheckResponse`
113+
- Elasticsearch
114+
- New API client methods: `create_elasticsearch_check`, `delete_elasticsearch_check`, `list_elasticsearch_checks`
115+
- New model classes: `CreateElasticsearchCheckPayload`, `ElasticsearchCheckChildResponse`, `ElasticsearchCheckResponse`
116+
- PostgreSQL
117+
- New API client methods: `create_postgresql_check`, `delete_postgresql_check`, `list_postgresql_checks`
118+
- New model classes: `CreatePostgresqlCheckPayload`, `PostgresqlCheckChildResponse`, `PostgresqlCheckResponse`
119+
- **Feature:** List offerings
120+
- New API client method: `list_offerings`
121+
- New model struct: `Offerings`
122+
- **Feature:** Manage scrape configs
123+
- New API client method: `delete_scrape_configs`, `partial_update_scrape_configs`
124+
- New model struct: `PartialUpdateScrapeConfigsRequestInner`
125+
- **Breaking changes**:
126+
- rename `CreateScrapeConfigPayloadBasicAuth` to `PartialUpdateScrapeConfigsRequestInnerBasicAuth`
127+
- rename `CreateScrapeConfigPayloadHttpSdConfigsInner` to `PartialUpdateScrapeConfigsRequestInnerHttpSdConfigsInner`
128+
- rename `CreateScrapeConfigPayloadHttpSdConfigsInnerOauth2` to `PartialUpdateScrapeConfigsRequestInnerHttpSdConfigsInnerOauth2`
129+
- rename `CreateScrapeConfigPayloadHttpSdConfigsInnerOauth2TlsConfig` to `PartialUpdateScrapeConfigsRequestInnerHttpSdConfigsInnerOauth2TlsConfig`
130+
- rename `CreateScrapeConfigPayloadMetricsRelabelConfigsInner` to `PartialUpdateScrapeConfigsRequestInnerMetricsRelabelConfigsInner`
131+
- rename `CreateScrapeConfigPayloadStaticConfigsInner` to `PartialUpdateScrapeConfigsRequestInnerStaticConfigsInner`
77132

78133
## Release (2026-02-18)
79134

services/mongodbflex/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## v1.2.3
2+
- **Feature:** client now supports UUID and decimal types
3+
- **Bugfix:** timeouts now passed to requests library
4+
15
## v1.2.2
26
- **Docs:** Extend description of `roles` field in `CreateUserPayload`, `PartialUpdateUserPayload`, `UpdateUserPayload` and `User` model
37

services/mongodbflex/oas_commit

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
0e64886dd0847341800d7191ed193b75413be998

services/mongodbflex/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "stackit-mongodbflex"
3-
version = "v1.2.2"
3+
version = "v1.2.3"
44
description = "STACKIT MongoDB Service API"
55
authors = [{ name = "STACKIT Developer Tools", email = "developer-tools@stackit.cloud" }]
66
requires-python = ">=3.9,<4.0"

services/mongodbflex/src/stackit/mongodbflex/api_client.py

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,13 @@
1313
""" # noqa: E501
1414

1515
import datetime
16+
import decimal
1617
import json
1718
import mimetypes
1819
import os
1920
import re
2021
import tempfile
22+
import uuid
2123
from enum import Enum
2224
from typing import Dict, List, Optional, Tuple, Union
2325
from urllib.parse import quote
@@ -64,8 +66,10 @@ class ApiClient:
6466
"bool": bool,
6567
"date": datetime.date,
6668
"datetime": datetime.datetime,
69+
"decimal": decimal.Decimal,
6770
"object": object,
6871
}
72+
_pool = None
6973

7074
def __init__(self, configuration, header_name=None, header_value=None, cookie=None) -> None:
7175
self.config: Configuration = configuration
@@ -268,7 +272,7 @@ def response_deserialize(
268272
return_data = self.__deserialize_file(response_data)
269273
elif response_type is not None:
270274
match = None
271-
content_type = response_data.getheader("content-type")
275+
content_type = response_data.headers.get("content-type")
272276
if content_type is not None:
273277
match = re.search(r"charset=([a-zA-Z\-\d]+)[\s;]?", content_type)
274278
encoding = match.group(1) if match else "utf-8"
@@ -285,7 +289,7 @@ def response_deserialize(
285289
return ApiResponse(
286290
status_code=response_data.status,
287291
data=return_data,
288-
headers=response_data.getheaders(),
292+
headers=response_data.headers,
289293
raw_data=response_data.data,
290294
)
291295

@@ -297,6 +301,7 @@ def sanitize_for_serialization(self, obj):
297301
If obj is str, int, long, float, bool, return directly.
298302
If obj is datetime.datetime, datetime.date
299303
convert to string in iso8601 format.
304+
If obj is decimal.Decimal return string representation.
300305
If obj is list, sanitize each element in the list.
301306
If obj is dict, return the dict.
302307
If obj is OpenAPI model, return the properties dict.
@@ -312,12 +317,16 @@ def sanitize_for_serialization(self, obj):
312317
return obj.get_secret_value()
313318
elif isinstance(obj, self.PRIMITIVE_TYPES):
314319
return obj
320+
elif isinstance(obj, uuid.UUID):
321+
return str(obj)
315322
elif isinstance(obj, list):
316323
return [self.sanitize_for_serialization(sub_obj) for sub_obj in obj]
317324
elif isinstance(obj, tuple):
318325
return tuple(self.sanitize_for_serialization(sub_obj) for sub_obj in obj)
319326
elif isinstance(obj, (datetime.datetime, datetime.date)):
320327
return obj.isoformat()
328+
elif isinstance(obj, decimal.Decimal):
329+
return str(obj)
321330

322331
elif isinstance(obj, dict):
323332
obj_dict = obj
@@ -327,7 +336,7 @@ def sanitize_for_serialization(self, obj):
327336
# and attributes which value is not None.
328337
# Convert attribute name to json key in
329338
# model definition for request.
330-
if hasattr(obj, "to_dict") and callable(obj.to_dict):
339+
if hasattr(obj, "to_dict") and callable(getattr(obj, "to_dict")): # noqa: B009
331340
obj_dict = obj.to_dict()
332341
else:
333342
obj_dict = obj.__dict__
@@ -355,7 +364,7 @@ def deserialize(self, response_text: str, response_type: str, content_type: Opti
355364
data = json.loads(response_text)
356365
except ValueError:
357366
data = response_text
358-
elif re.match(r"^application/(json|[\w!#$&.+-^_]+\+json)\s*(;|$)", content_type, re.IGNORECASE):
367+
elif re.match(r"^application/(json|[\w!#$&.+\-^_]+\+json)\s*(;|$)", content_type, re.IGNORECASE):
359368
if response_text == "":
360369
data = ""
361370
else:
@@ -401,12 +410,14 @@ def __deserialize(self, data, klass):
401410

402411
if klass in self.PRIMITIVE_TYPES:
403412
return self.__deserialize_primitive(data, klass)
404-
elif klass == object:
413+
elif klass is object:
405414
return self.__deserialize_object(data)
406-
elif klass == datetime.date:
415+
elif klass is datetime.date:
407416
return self.__deserialize_date(data)
408-
elif klass == datetime.datetime:
417+
elif klass is datetime.datetime:
409418
return self.__deserialize_datetime(data)
419+
elif klass is decimal.Decimal:
420+
return decimal.Decimal(data)
410421
elif issubclass(klass, Enum):
411422
return self.__deserialize_enum(data, klass)
412423
else:
@@ -554,12 +565,14 @@ def __deserialize_file(self, response):
554565
os.close(fd)
555566
os.remove(path)
556567

557-
content_disposition = response.getheader("Content-Disposition")
568+
content_disposition = response.headers.get("Content-Disposition")
558569
if content_disposition:
559570
m = re.search(r'filename=[\'"]?([^\'"\s]+)[\'"]?', content_disposition)
560571
if m is None:
561572
raise ValueError("Unexpected 'content-disposition' header value")
562-
filename = m.group(1)
573+
filename = os.path.basename(m.group(1)) # Strip any directory traversal
574+
if filename in ("", ".", ".."): # fall back to tmp filename
575+
filename = os.path.basename(path)
563576
path = os.path.join(os.path.dirname(path), filename)
564577

565578
with open(path, "wb") as f:

services/mongodbflex/src/stackit/mongodbflex/exceptions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ def __init__(
130130
self.body = http_resp.data.decode("utf-8")
131131
except Exception: # noqa: S110
132132
pass
133-
self.headers = http_resp.getheaders()
133+
self.headers = http_resp.headers
134134

135135
@classmethod
136136
def from_response(

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

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
Do not edit the class manually.
1414
""" # noqa: E501
1515

16-
1716
# import models into model package
1817
from stackit.mongodbflex.models.acl import ACL
1918
from stackit.mongodbflex.models.backup import Backup

0 commit comments

Comments
 (0)