Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions scaleway-async/scaleway_async/block/v1/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -259,6 +259,7 @@ async def create_volume(
from_empty: Optional[CreateVolumeRequestFromEmpty] = None,
from_snapshot: Optional[CreateVolumeRequestFromSnapshot] = None,
tags: Optional[list[str]] = None,
kms_key_id: Optional[str] = None,
) -> Volume:
"""
Create a volume.
Expand All @@ -274,6 +275,7 @@ async def create_volume(
:param from_snapshot: Specify the snapshot ID of the original snapshot.
One-Of ('from'): at most one of 'from_empty', 'from_snapshot' could be set.
:param tags: List of tags assigned to the volume.
:param kms_key_id: UUID of the KMS key used to protect the volume's encryption.
:return: :class:`Volume <Volume>`

Usage:
Expand All @@ -293,6 +295,7 @@ async def create_volume(
name=name or random_name(prefix="vol"),
project_id=project_id,
tags=tags,
kms_key_id=kms_key_id,
from_empty=from_empty,
from_snapshot=from_snapshot,
perf_iops=perf_iops,
Expand Down
9 changes: 9 additions & 0 deletions scaleway-async/scaleway_async/block/v1/marshalling.py
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,12 @@ def unmarshal_Volume(data: Any) -> Volume:
else:
args["last_detached_at"] = None

field = data.get("kms_key_id", None)
if field is not None:
args["kms_key_id"] = field
else:
args["kms_key_id"] = None

return Volume(**args)


Expand Down Expand Up @@ -538,6 +544,9 @@ def marshal_CreateVolumeRequest(
if request.tags is not None:
output["tags"] = request.tags

if request.kms_key_id is not None:
output["kms_key_id"] = request.kms_key_id

return output


Expand Down
10 changes: 10 additions & 0 deletions scaleway-async/scaleway_async/block/v1/types.py
Original file line number Diff line number Diff line change
Expand Up @@ -355,6 +355,11 @@ class Volume:
Last time the volume was detached.
"""

kms_key_id: Optional[str] = None
"""
KMS Key used for securing the volume's encryption.
"""


@dataclass
class CreateSnapshotRequest:
Expand Down Expand Up @@ -411,6 +416,11 @@ class CreateVolumeRequest:
List of tags assigned to the volume.
"""

kms_key_id: Optional[str] = None
"""
UUID of the KMS key used to protect the volume's encryption.
"""

from_empty: Optional[CreateVolumeRequestFromEmpty] = None

from_snapshot: Optional[CreateVolumeRequestFromSnapshot] = None
Expand Down
3 changes: 3 additions & 0 deletions scaleway/scaleway/block/v1/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -259,6 +259,7 @@ def create_volume(
from_empty: Optional[CreateVolumeRequestFromEmpty] = None,
from_snapshot: Optional[CreateVolumeRequestFromSnapshot] = None,
tags: Optional[list[str]] = None,
kms_key_id: Optional[str] = None,
) -> Volume:
"""
Create a volume.
Expand All @@ -274,6 +275,7 @@ def create_volume(
:param from_snapshot: Specify the snapshot ID of the original snapshot.
One-Of ('from'): at most one of 'from_empty', 'from_snapshot' could be set.
:param tags: List of tags assigned to the volume.
:param kms_key_id: UUID of the KMS key used to protect the volume's encryption.
:return: :class:`Volume <Volume>`

Usage:
Expand All @@ -293,6 +295,7 @@ def create_volume(
name=name or random_name(prefix="vol"),
project_id=project_id,
tags=tags,
kms_key_id=kms_key_id,
from_empty=from_empty,
from_snapshot=from_snapshot,
perf_iops=perf_iops,
Expand Down
9 changes: 9 additions & 0 deletions scaleway/scaleway/block/v1/marshalling.py
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,12 @@ def unmarshal_Volume(data: Any) -> Volume:
else:
args["last_detached_at"] = None

field = data.get("kms_key_id", None)
if field is not None:
args["kms_key_id"] = field
else:
args["kms_key_id"] = None

return Volume(**args)


Expand Down Expand Up @@ -538,6 +544,9 @@ def marshal_CreateVolumeRequest(
if request.tags is not None:
output["tags"] = request.tags

if request.kms_key_id is not None:
output["kms_key_id"] = request.kms_key_id

return output


Expand Down
10 changes: 10 additions & 0 deletions scaleway/scaleway/block/v1/types.py
Original file line number Diff line number Diff line change
Expand Up @@ -355,6 +355,11 @@ class Volume:
Last time the volume was detached.
"""

kms_key_id: Optional[str] = None
"""
KMS Key used for securing the volume's encryption.
"""


@dataclass
class CreateSnapshotRequest:
Expand Down Expand Up @@ -411,6 +416,11 @@ class CreateVolumeRequest:
List of tags assigned to the volume.
"""

kms_key_id: Optional[str] = None
"""
UUID of the KMS key used to protect the volume's encryption.
"""

from_empty: Optional[CreateVolumeRequestFromEmpty] = None

from_snapshot: Optional[CreateVolumeRequestFromSnapshot] = None
Expand Down
Loading