diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c15b7dc..18d2257c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## Release (2025-XX-XX) +- `authorization`: [v0.5.0](services/authorization/CHANGELOG.md#v050) + - Add new `etag` attribute to `Role` model class + ## Release (2025-11-14) - `cdn`: - [v2.1.0](services/cdn/CHANGELOG.md#v210) diff --git a/services/authorization/CHANGELOG.md b/services/authorization/CHANGELOG.md index 46b0bfe1..acf88fa2 100644 --- a/services/authorization/CHANGELOG.md +++ b/services/authorization/CHANGELOG.md @@ -1,3 +1,6 @@ +## v0.5.0 +- Add new `etag` attribute to `Role` model class + ## v0.4.1 - **Bugfix:** Prevent year 0 timestamp issue diff --git a/services/authorization/pyproject.toml b/services/authorization/pyproject.toml index 6b8e60b8..6eba9656 100644 --- a/services/authorization/pyproject.toml +++ b/services/authorization/pyproject.toml @@ -3,7 +3,7 @@ name = "stackit-authorization" [tool.poetry] name = "stackit-authorization" -version = "v0.4.1" +version = "v0.5.0" authors = [ "STACKIT Developer Tools ", ] diff --git a/services/authorization/src/stackit/authorization/models/role.py b/services/authorization/src/stackit/authorization/models/role.py index 17bcdda8..5014984d 100644 --- a/services/authorization/src/stackit/authorization/models/role.py +++ b/services/authorization/src/stackit/authorization/models/role.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 typing_extensions import Annotated, Self from stackit.authorization.models.permission import Permission @@ -30,10 +30,11 @@ class Role(BaseModel): """ # noqa: E501 description: Annotated[str, Field(strict=True, max_length=255)] + etag: Optional[StrictStr] = None id: Optional[Annotated[str, Field(strict=True)]] = None name: Annotated[str, Field(strict=True)] permissions: List[Permission] - __properties: ClassVar[List[str]] = ["description", "id", "name", "permissions"] + __properties: ClassVar[List[str]] = ["description", "etag", "id", "name", "permissions"] @field_validator("id") def id_validate_regular_expression(cls, value): @@ -110,6 +111,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate( { "description": obj.get("description"), + "etag": obj.get("etag"), "id": obj.get("id"), "name": obj.get("name"), "permissions": (