Skip to content

Commit da9c7ea

Browse files
Auto-update API to: 6778d2c, 2026-03-24 09:51:50 +0000
1 parent e714d94 commit da9c7ea

File tree

7 files changed

+324
-67
lines changed

7 files changed

+324
-67
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "nebius"
7-
version = "0.3.50"
7+
version = "0.3.51"
88
description = "Nebius Python SDK"
99
authors = [
1010
{ name = "Daniil Drizhuk", email = "complynx@nebius.com" },

src/nebius/api/nebius/compute/v1/image_pb2.py

Lines changed: 12 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/nebius/api/nebius/mk8s/v1/__init__.py

Lines changed: 227 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1877,6 +1877,7 @@ def __init__(
18771877
service_account_id: "builtins.str|None|unset.UnsetType" = unset.Unset,
18781878
preemptible: "PreemptibleSpec|node_group_pb2.PreemptibleSpec|None|unset.UnsetType" = unset.Unset,
18791879
reservation_policy: "ReservationPolicy|node_group_pb2.ReservationPolicy|None|unset.UnsetType" = unset.Unset,
1880+
local_disks: "LocalDisksSpec|node_group_pb2.LocalDisksSpec|None|unset.UnsetType" = unset.Unset,
18801881
) -> None:
18811882
super().__init__(initial_message)
18821883
if not isinstance(metadata, unset.UnsetType):
@@ -1905,6 +1906,8 @@ def __init__(
19051906
self.preemptible = preemptible
19061907
if not isinstance(reservation_policy, unset.UnsetType):
19071908
self.reservation_policy = reservation_policy
1909+
if not isinstance(local_disks, unset.UnsetType):
1910+
self.local_disks = local_disks
19081911

19091912
def __dir__(self) ->abc.Iterable[builtins.str]:
19101913
return [
@@ -1921,6 +1924,7 @@ def __dir__(self) ->abc.Iterable[builtins.str]:
19211924
"service_account_id",
19221925
"preemptible",
19231926
"reservation_policy",
1927+
"local_disks",
19241928
]
19251929

19261930
@builtins.property
@@ -2153,6 +2157,21 @@ def reservation_policy(self, value: "ReservationPolicy|node_group_pb2.Reservatio
21532157
return super()._set_field("reservation_policy",value,explicit_presence=False,
21542158
)
21552159

2160+
@builtins.property
2161+
def local_disks(self) -> "LocalDisksSpec":
2162+
"""
2163+
local_disks enables the provisioning of fast local drives.
2164+
This type of storage is strictly ephemeral: on node restart, all data is erased, similar to RAM.
2165+
"""
2166+
2167+
return super()._get_field("local_disks", explicit_presence=False,
2168+
wrap=LocalDisksSpec,
2169+
)
2170+
@local_disks.setter
2171+
def local_disks(self, value: "LocalDisksSpec|node_group_pb2.LocalDisksSpec|None") -> None:
2172+
return super()._set_field("local_disks",value,explicit_presence=False,
2173+
)
2174+
21562175
__PY_TO_PB2__: builtins.dict[builtins.str,builtins.str] = {
21572176
"metadata":"metadata",
21582177
"taints":"taints",
@@ -2167,6 +2186,7 @@ def reservation_policy(self, value: "ReservationPolicy|node_group_pb2.Reservatio
21672186
"service_account_id":"service_account_id",
21682187
"preemptible":"preemptible",
21692188
"reservation_policy":"reservation_policy",
2189+
"local_disks":"local_disks",
21702190
}
21712191

21722192
class NodeMetadataTemplate(pb_classes.Message):
@@ -3181,6 +3201,210 @@ def reservation_ids(self, value: "abc.Iterable[builtins.str]|None") -> None:
31813201
"Policy":"Policy",
31823202
}
31833203

3204+
class LocalDisksSpec(pb_classes.Message):
3205+
__PB2_CLASS__ = node_group_pb2.LocalDisksSpec
3206+
__PB2_DESCRIPTOR__ = descriptor.DescriptorWrap[descriptor_1.Descriptor](".nebius.mk8s.v1.LocalDisksSpec",node_group_pb2.DESCRIPTOR,descriptor_1.Descriptor)
3207+
__mask_functions__ = {
3208+
}
3209+
3210+
class __OneOfClass_request__(pb_classes.OneOf):
3211+
name: builtins.str= "request"
3212+
3213+
def __init__(self, msg: "LocalDisksSpec") -> None:
3214+
super().__init__()
3215+
self._message: "LocalDisksSpec" = msg
3216+
3217+
class __OneOfClass_request_passthrough_group__(__OneOfClass_request__):
3218+
field: typing.Literal["passthrough_group"] = "passthrough_group"
3219+
3220+
def __init__(self, msg: "LocalDisksSpec") -> None:
3221+
super().__init__(msg)
3222+
@builtins.property
3223+
def value(self) -> "PassthroughGroupRequest":
3224+
return self._message.passthrough_group
3225+
3226+
@builtins.property
3227+
def request(self) -> __OneOfClass_request_passthrough_group__|None:
3228+
field_name_1: str|None = super().which_field_in_oneof("request")
3229+
match field_name_1:
3230+
case "passthrough_group":
3231+
return self.__OneOfClass_request_passthrough_group__(self)
3232+
case None:
3233+
return None
3234+
case _:
3235+
raise pb_classes.OneOfMatchError(field_name_1)
3236+
3237+
def __init__(
3238+
self,
3239+
initial_message: message_1.Message|None = None,
3240+
*,
3241+
passthrough_group: "PassthroughGroupRequest|node_group_pb2.PassthroughGroupRequest|None|unset.UnsetType" = unset.Unset,
3242+
config: "LocalDisksSpecConfig|node_group_pb2.LocalDisksSpecConfig|None|unset.UnsetType" = unset.Unset,
3243+
) -> None:
3244+
super().__init__(initial_message)
3245+
if not isinstance(passthrough_group, unset.UnsetType):
3246+
self.passthrough_group = passthrough_group
3247+
if not isinstance(config, unset.UnsetType):
3248+
self.config = config
3249+
3250+
def __dir__(self) ->abc.Iterable[builtins.str]:
3251+
return [
3252+
"passthrough_group",
3253+
"config",
3254+
"request",
3255+
]
3256+
3257+
@builtins.property
3258+
def passthrough_group(self) -> "PassthroughGroupRequest|None":
3259+
"""
3260+
Requests passthrough local disks from the host.
3261+
Topology of the provided disks is preserved during stop and start
3262+
for every instance of a specific platform and preset in the region.
3263+
"""
3264+
3265+
return super()._get_field("passthrough_group", explicit_presence=True,
3266+
wrap=PassthroughGroupRequest,
3267+
)
3268+
@passthrough_group.setter
3269+
def passthrough_group(self, value: "PassthroughGroupRequest|node_group_pb2.PassthroughGroupRequest|None") -> None:
3270+
return super()._set_field("passthrough_group",value,explicit_presence=True,
3271+
)
3272+
3273+
@builtins.property
3274+
def config(self) -> "LocalDisksSpecConfig":
3275+
"""
3276+
config defines actions that managed Kubernetes service performs on mounted local disks
3277+
to provide them inside Kubernetes cluster with a convenient interface.
3278+
"""
3279+
3280+
return super()._get_field("config", explicit_presence=False,
3281+
wrap=LocalDisksSpecConfig,
3282+
)
3283+
@config.setter
3284+
def config(self, value: "LocalDisksSpecConfig|node_group_pb2.LocalDisksSpecConfig|None") -> None:
3285+
return super()._set_field("config",value,explicit_presence=False,
3286+
)
3287+
3288+
__PY_TO_PB2__: builtins.dict[builtins.str,builtins.str] = {
3289+
"passthrough_group":"passthrough_group",
3290+
"config":"config",
3291+
"request":"request",
3292+
}
3293+
3294+
class PassthroughGroupRequest(pb_classes.Message):
3295+
__PB2_CLASS__ = node_group_pb2.PassthroughGroupRequest
3296+
__PB2_DESCRIPTOR__ = descriptor.DescriptorWrap[descriptor_1.Descriptor](".nebius.mk8s.v1.PassthroughGroupRequest",node_group_pb2.DESCRIPTOR,descriptor_1.Descriptor)
3297+
__mask_functions__ = {
3298+
}
3299+
3300+
def __init__(
3301+
self,
3302+
initial_message: message_1.Message|None = None,
3303+
*,
3304+
requested: "builtins.bool|None|unset.UnsetType" = unset.Unset,
3305+
) -> None:
3306+
super().__init__(initial_message)
3307+
if not isinstance(requested, unset.UnsetType):
3308+
self.requested = requested
3309+
3310+
def __dir__(self) ->abc.Iterable[builtins.str]:
3311+
return [
3312+
"requested",
3313+
]
3314+
3315+
@builtins.property
3316+
def requested(self) -> "builtins.bool":
3317+
"""
3318+
Passthrough local disks from the underlying host.
3319+
3320+
Devices are expected to appear in the guest as NVMe devices (nvme0, nvme1, ...),
3321+
but the exact number depends on the preset.
3322+
Enabled only when this field is explicitly set.
3323+
"""
3324+
3325+
return super()._get_field("requested", explicit_presence=False,
3326+
)
3327+
@requested.setter
3328+
def requested(self, value: "builtins.bool|None") -> None:
3329+
return super()._set_field("requested",value,explicit_presence=False,
3330+
)
3331+
3332+
__PY_TO_PB2__: builtins.dict[builtins.str,builtins.str] = {
3333+
"requested":"requested",
3334+
}
3335+
3336+
class LocalDisksSpecConfig(pb_classes.Message):
3337+
"""
3338+
LocalDisksSpecConfig defines actions that managed Kubernetes service performs on mounted local disks
3339+
to provide them inside Kubernetes cluster with a convenient interface.
3340+
"""
3341+
3342+
__PB2_CLASS__ = node_group_pb2.LocalDisksSpecConfig
3343+
__PB2_DESCRIPTOR__ = descriptor.DescriptorWrap[descriptor_1.Descriptor](".nebius.mk8s.v1.LocalDisksSpecConfig",node_group_pb2.DESCRIPTOR,descriptor_1.Descriptor)
3344+
__mask_functions__ = {
3345+
}
3346+
3347+
class __OneOfClass_type__(pb_classes.OneOf):
3348+
name: builtins.str= "type"
3349+
3350+
def __init__(self, msg: "LocalDisksSpecConfig") -> None:
3351+
super().__init__()
3352+
self._message: "LocalDisksSpecConfig" = msg
3353+
3354+
class __OneOfClass_type_none__(__OneOfClass_type__):
3355+
field: typing.Literal["none"] = "none"
3356+
3357+
def __init__(self, msg: "LocalDisksSpecConfig") -> None:
3358+
super().__init__(msg)
3359+
@builtins.property
3360+
def value(self) -> "builtins.bool":
3361+
return self._message.none
3362+
3363+
@builtins.property
3364+
def type(self) -> __OneOfClass_type_none__|None:
3365+
field_name_1: str|None = super().which_field_in_oneof("type")
3366+
match field_name_1:
3367+
case "none":
3368+
return self.__OneOfClass_type_none__(self)
3369+
case None:
3370+
return None
3371+
case _:
3372+
raise pb_classes.OneOfMatchError(field_name_1)
3373+
3374+
def __init__(
3375+
self,
3376+
initial_message: message_1.Message|None = None,
3377+
*,
3378+
none: "builtins.bool|None|unset.UnsetType" = unset.Unset,
3379+
) -> None:
3380+
super().__init__(initial_message)
3381+
if not isinstance(none, unset.UnsetType):
3382+
self.none = none
3383+
3384+
def __dir__(self) ->abc.Iterable[builtins.str]:
3385+
return [
3386+
"none",
3387+
"type",
3388+
]
3389+
3390+
@builtins.property
3391+
def none(self) -> "builtins.bool|None":
3392+
"""
3393+
none: "do nothing" - local disks will be provisioned as on a regular compute instance.
3394+
"""
3395+
3396+
return super()._get_field("none", explicit_presence=True,
3397+
)
3398+
@none.setter
3399+
def none(self, value: "builtins.bool|None") -> None:
3400+
return super()._set_field("none",value,explicit_presence=True,
3401+
)
3402+
3403+
__PY_TO_PB2__: builtins.dict[builtins.str,builtins.str] = {
3404+
"none":"none",
3405+
"type":"type",
3406+
}
3407+
31843408
class NodeGroupStatus(pb_classes.Message):
31853409
__PB2_CLASS__ = node_group_pb2.NodeGroupStatus
31863410
__PB2_DESCRIPTOR__ = descriptor.DescriptorWrap[descriptor_1.Descriptor](".nebius.mk8s.v1.NodeGroupStatus",node_group_pb2.DESCRIPTOR,descriptor_1.Descriptor)
@@ -4353,6 +4577,9 @@ def message(self, value: "builtins.str|None") -> None:
43534577
"NodeAutoRepairCondition",
43544578
"PreemptibleSpec",
43554579
"ReservationPolicy",
4580+
"LocalDisksSpec",
4581+
"PassthroughGroupRequest",
4582+
"LocalDisksSpecConfig",
43564583
"NodeGroupStatus",
43574584
"GetNodeGroupCompatibilityMatrixRequest",
43584585
"NodeGroupCompatibilityMatrix",

0 commit comments

Comments
 (0)