From 7ae7b77bc59797ef7cda0169c1736e9b71794f10 Mon Sep 17 00:00:00 2001 From: SDK Generator Bot Date: Wed, 21 Oct 2026 09:16:12 +0000 Subject: [PATCH 1/2] Generate dremio --- services/dremio/oas_commit | 2 +- .../dremio/src/stackit/dremio/api/default_api.py | 15 +++++++++++++++ .../models/create_dremio_instance_payload.py | 9 +++++++-- .../src/stackit/dremio/models/dremio_response.py | 5 +++++ .../models/update_dremio_instance_payload.py | 9 +++++++-- 5 files changed, 35 insertions(+), 5 deletions(-) diff --git a/services/dremio/oas_commit b/services/dremio/oas_commit index e05d493f3..9c7455dfa 100644 --- a/services/dremio/oas_commit +++ b/services/dremio/oas_commit @@ -1 +1 @@ -da4701b7dbe20e984aef89711bb9ba716e19fcba +7f06203ae1280163695cd27b7f353dca0d2d04b8 diff --git a/services/dremio/src/stackit/dremio/api/default_api.py b/services/dremio/src/stackit/dremio/api/default_api.py index 4380fc76b..06cd2c651 100644 --- a/services/dremio/src/stackit/dremio/api/default_api.py +++ b/services/dremio/src/stackit/dremio/api/default_api.py @@ -116,6 +116,7 @@ def create_dremio_instance( "400": "Error", "401": "Error", "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -188,6 +189,7 @@ def create_dremio_instance_with_http_info( "400": "Error", "401": "Error", "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -260,6 +262,7 @@ def create_dremio_instance_without_preload_content( "400": "Error", "401": "Error", "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -396,6 +399,7 @@ def create_dremio_user( "400": "Error", "401": "Error", "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -472,6 +476,7 @@ def create_dremio_user_with_http_info( "400": "Error", "401": "Error", "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -548,6 +553,7 @@ def create_dremio_user_without_preload_content( "400": "Error", "401": "Error", "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -684,6 +690,7 @@ def delete_dremio_instance( "401": "Error", "404": None, "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -757,6 +764,7 @@ def delete_dremio_instance_with_http_info( "401": "Error", "404": None, "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -830,6 +838,7 @@ def delete_dremio_instance_without_preload_content( "401": "Error", "404": None, "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -959,6 +968,7 @@ def delete_dremio_user( "401": "Error", "404": None, "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -1036,6 +1046,7 @@ def delete_dremio_user_with_http_info( "401": "Error", "404": None, "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -1113,6 +1124,7 @@ def delete_dremio_user_without_preload_content( "401": "Error", "404": None, "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -2415,6 +2427,7 @@ def update_dremio_instance( "401": "Error", "404": None, "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -2492,6 +2505,7 @@ def update_dremio_instance_with_http_info( "401": "Error", "404": None, "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) @@ -2569,6 +2583,7 @@ def update_dremio_instance_without_preload_content( "401": "Error", "404": None, "409": None, + "422": None, "500": None, } response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout) diff --git a/services/dremio/src/stackit/dremio/models/create_dremio_instance_payload.py b/services/dremio/src/stackit/dremio/models/create_dremio_instance_payload.py index b7b3d1609..809998803 100644 --- a/services/dremio/src/stackit/dremio/models/create_dremio_instance_payload.py +++ b/services/dremio/src/stackit/dremio/models/create_dremio_instance_payload.py @@ -18,7 +18,7 @@ import re # noqa: F401 from typing import Any, ClassVar, Dict, List, Optional, Set -from pydantic import BaseModel, ConfigDict, Field, field_validator +from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator from pydantic_core import to_jsonable_python from typing_extensions import Annotated, Self @@ -30,6 +30,10 @@ class CreateDremioInstancePayload(BaseModel): CreateDremioInstancePayload """ # noqa: E501 + acl: Optional[List[StrictStr]] = Field( + default=None, + description="The Access Control List (ACL) defining the IPv4 or IPv6 CIDR ranges allowed to connect to the Dremio instance. An empty list allows access from any address. Omitting this field on creation allows access from any address. Omitting it on update preserves the current list. Updates replace the entire list and take effect asynchronously.", + ) authentication: Optional[Authentication] = None description: Optional[Annotated[str, Field(strict=True, max_length=1024)]] = Field( default=None, @@ -38,7 +42,7 @@ class CreateDremioInstancePayload(BaseModel): display_name: Annotated[str, Field(min_length=1, strict=True, max_length=32)] = Field( description="The display name is a short name chosen by the user to identify the resource.", alias="displayName" ) - __properties: ClassVar[List[str]] = ["authentication", "description", "displayName"] + __properties: ClassVar[List[str]] = ["acl", "authentication", "description", "displayName"] @field_validator("display_name") def display_name_validate_regular_expression(cls, value): @@ -103,6 +107,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate( { + "acl": obj.get("acl"), "authentication": ( Authentication.from_dict(obj["authentication"]) if obj.get("authentication") is not None else None ), diff --git a/services/dremio/src/stackit/dremio/models/dremio_response.py b/services/dremio/src/stackit/dremio/models/dremio_response.py index f9ad94d68..d0c3a0c25 100644 --- a/services/dremio/src/stackit/dremio/models/dremio_response.py +++ b/services/dremio/src/stackit/dremio/models/dremio_response.py @@ -33,6 +33,9 @@ class DremioResponse(BaseModel): DremioResponse """ # noqa: E501 + acl: List[StrictStr] = Field( + description="The Access Control List (ACL) defining the IPv4 or IPv6 CIDR ranges allowed to connect to the Dremio instance. An empty list allows access from any address. Omitting this field on creation allows access from any address. Omitting it on update preserves the current list. Updates replace the entire list and take effect asynchronously." + ) authentication: Authentication create_time: datetime = Field(description="The point in time the resource was created.") description: Optional[Annotated[str, Field(strict=True, max_length=1024)]] = Field( @@ -51,6 +54,7 @@ class DremioResponse(BaseModel): id: UUID = Field(description="A auto generated unique id which identifies the resource.") state: StrictStr = Field(description="The current state of the resource.") __properties: ClassVar[List[str]] = [ + "acl", "authentication", "create_time", "description", @@ -152,6 +156,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate( { + "acl": obj.get("acl"), "authentication": ( Authentication.from_dict(obj["authentication"]) if obj.get("authentication") is not None else None ), diff --git a/services/dremio/src/stackit/dremio/models/update_dremio_instance_payload.py b/services/dremio/src/stackit/dremio/models/update_dremio_instance_payload.py index 67d4b84aa..bc1d7088f 100644 --- a/services/dremio/src/stackit/dremio/models/update_dremio_instance_payload.py +++ b/services/dremio/src/stackit/dremio/models/update_dremio_instance_payload.py @@ -18,7 +18,7 @@ import re # noqa: F401 from typing import Any, ClassVar, Dict, List, Optional, Set -from pydantic import BaseModel, ConfigDict, Field, field_validator +from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator from pydantic_core import to_jsonable_python from typing_extensions import Annotated, Self @@ -30,6 +30,10 @@ class UpdateDremioInstancePayload(BaseModel): UpdateDremioInstancePayload """ # noqa: E501 + acl: Optional[List[StrictStr]] = Field( + default=None, + description="The Access Control List (ACL) defining the IPv4 or IPv6 CIDR ranges allowed to connect to the Dremio instance. An empty list allows access from any address. Omitting this field on creation allows access from any address. Omitting it on update preserves the current list. Updates replace the entire list and take effect asynchronously.", + ) authentication: Optional[Authentication] = None description: Optional[Annotated[str, Field(strict=True, max_length=1024)]] = Field( default=None, @@ -40,7 +44,7 @@ class UpdateDremioInstancePayload(BaseModel): description="The display name is a short name chosen by the user to identify the resource.", alias="displayName", ) - __properties: ClassVar[List[str]] = ["authentication", "description", "displayName"] + __properties: ClassVar[List[str]] = ["acl", "authentication", "description", "displayName"] @field_validator("display_name") def display_name_validate_regular_expression(cls, value): @@ -108,6 +112,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate( { + "acl": obj.get("acl"), "authentication": ( Authentication.from_dict(obj["authentication"]) if obj.get("authentication") is not None else None ), From b8647566906b094f14a672c96fc918a1136edb88 Mon Sep 17 00:00:00 2001 From: Alexander Dahmen Date: Wed, 21 Oct 2026 12:35:11 +0200 Subject: [PATCH 2/2] chore(dremio): Add changelogs Signed-off-by: Alexander Dahmen --- CHANGELOG.md | 4 ++++ services/dremio/CHANGELOG.md | 5 +++++ services/dremio/pyproject.toml | 2 +- services/dremio/uv.lock | 2 +- 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ef9636366..cd88d7366 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,10 @@ - **Improvement:** `list_record_sets`/`list_zones` docs clarify that records/zones in the `DELETE_SUCCEEDED` state are excluded by default; pass `state[eq]=DELETE_SUCCEEDED` to retrieve them - **Improvement:** `Label.key`/`CreateLabelPayload.key` now accepts up to 314 characters (previously 63), supporting prefixed label keys (e.g. `example.com/environment`) - **Breaking Change:** `PartialUpdateZonePayload.extensions` type changed from `ZoneExtensions` to `DomainExtensions`, now also exposing `observability_extension.state` +- `dremio`: + - [v0.2.0](services/dremio/CHANGELOG.md#v020) + - **Feature:** Add `acl` field to models `CreateDremioInstancePayload`, `DremioResponse`, and `UpdateDremioInstancePayload` + - **Breaking Change:** `DremioResponse` now requires an `acl` field; constructing an instance without it will raise a validation error - `iaas`: - [v1.7.0](services/iaas/CHANGELOG.md#v170) - **Docs:** Update documentation for `labels` field constraints across models. diff --git a/services/dremio/CHANGELOG.md b/services/dremio/CHANGELOG.md index 25b098bc5..6083d303a 100644 --- a/services/dremio/CHANGELOG.md +++ b/services/dremio/CHANGELOG.md @@ -1,3 +1,8 @@ +## v0.2.0 + +- **Feature:** Add `acl` field to models `CreateDremioInstancePayload`, `DremioResponse`, and `UpdateDremioInstancePayload` +- **Breaking Change:** `DremioResponse` now requires an `acl` field; constructing an instance without it will raise a validation error + ## v0.1.0 - **New**: STACKIT Dremio module can be used to manage STACKIT Dremio instances and users. diff --git a/services/dremio/pyproject.toml b/services/dremio/pyproject.toml index fc2200ee7..668167d95 100644 --- a/services/dremio/pyproject.toml +++ b/services/dremio/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "stackit-dremio" -version = "v0.1.0" +version = "v0.2.0" description = "STACKIT Dremio API" authors = [{name = "STACKIT Developer Tools", email = "developer-tools@stackit.cloud"}] requires-python = ">=3.10,<4.0" diff --git a/services/dremio/uv.lock b/services/dremio/uv.lock index d2fac65f5..77fb83dbc 100644 --- a/services/dremio/uv.lock +++ b/services/dremio/uv.lock @@ -1133,7 +1133,7 @@ dev = [ [[package]] name = "stackit-dremio" -version = "0.1.0" +version = "0.2.0" source = { editable = "." } dependencies = [ { name = "pydantic" },