From c69bc69f12d0b88d0a88349e0c6454cb2b9696a2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 1 Sep 2026 08:39:21 +0000 Subject: [PATCH] Publish proto files from 413023b085 --- nebius/compute/v1/image.proto | 4 ++- nebius/compute/v1/image_service.proto | 34 +++++++++++++++++----- nebius/compute/v1/instance.proto | 6 ++-- nebius/mk8s/v1/node_group.proto | 41 ++++++--------------------- 4 files changed, 42 insertions(+), 43 deletions(-) diff --git a/nebius/compute/v1/image.proto b/nebius/compute/v1/image.proto index 3d40279..a08d762 100644 --- a/nebius/compute/v1/image.proto +++ b/nebius/compute/v1/image.proto @@ -13,7 +13,9 @@ option java_outer_classname = "ImageProto"; option java_package = "ai.nebius.pub.compute.v1"; message Image { - common.v1.ResourceMetadata metadata = 1; + common.v1.ResourceMetadata metadata = 1 [(nid) = { + parent_resource: ["project"] + }]; ImageSpec spec = 2; diff --git a/nebius/compute/v1/image_service.proto b/nebius/compute/v1/image_service.proto index 60b55cf..ee8e2fe 100644 --- a/nebius/compute/v1/image_service.proto +++ b/nebius/compute/v1/image_service.proto @@ -41,7 +41,14 @@ service ImageService { rpc Delete(DeleteImageRequest) returns (common.v1.Operation); // Lists all operations that were performed within a specific parent resource. - rpc ListOperationsByParent(ListOperationsByParentRequest) returns (common.v1.ListOperationsResponse); + rpc ListOperationsByParent(ListOperationsByParentRequest) returns (common.v1.ListOperationsResponse) { + option (request_fields) = { + field_path: "parent_id" + nid: { + resource: ["project"] + } + }; + } // Lists all public images available in a specific region. Regions doc https://docs.nebius.com/overview/regions // Public images can contain specific labels in metadata like: @@ -51,17 +58,24 @@ service ImageService { } message GetImageRequest { - string id = 1; + string id = 1 [(nid) = { + resource: ["computeimage"] + }]; } message GetImageLatestByFamilyRequest { string image_family = 1; - string parent_id = 2; // default 'project-{region}public-images' + // default 'project-{region}public-images' + string parent_id = 2 [(nid) = { + resource: ["project"] + }]; } message ListImagesRequest { - string parent_id = 1; + string parent_id = 1 [(nid) = { + resource: ["project"] + }]; int64 page_size = 2; @@ -77,19 +91,25 @@ message ListImagesRequest { } message CreateImageRequest { - common.v1.ResourceMetadata metadata = 1; + common.v1.ResourceMetadata metadata = 1 [(nid) = { + parent_resource: ["project"] + }]; ImageSpec spec = 2; } message UpdateImageRequest { - common.v1.ResourceMetadata metadata = 1; + common.v1.ResourceMetadata metadata = 1 [(nid) = { + parent_resource: ["project"] + }]; ImageSpec spec = 2; } message DeleteImageRequest { - string id = 1; + string id = 1 [(nid) = { + resource: ["computeimage"] + }]; } message ListImagesResponse { diff --git a/nebius/compute/v1/instance.proto b/nebius/compute/v1/instance.proto index 47ba507..974cf38 100644 --- a/nebius/compute/v1/instance.proto +++ b/nebius/compute/v1/instance.proto @@ -73,9 +73,11 @@ message InstanceSpec { // nvlinstancegroup InstanceRecoveryPolicy recovery_policy = 15 [(field_behavior) = IMMUTABLE]; - // Include these parameters to create a Preemptible VM and omit them to create a Regular VM + // Set this field to create a preemptible VM, or omit it to create a regular VM. // For details, see https://docs.nebius.com/compute/virtual-machines/preemptible - PreemptibleSpec preemptible = 19 [(field_behavior) = IMMUTABLE]; + // A preemptible VM cannot be converted to a regular VM or vice versa. Once set, this field cannot be removed; if the + // VM was created without it, the field cannot be added later. + PreemptibleSpec preemptible = 19; // Instance's hostname. Used to generate default DNS record in format `..compute.internal.` // or `..compute.internal.` if hostname is not specified. diff --git a/nebius/mk8s/v1/node_group.proto b/nebius/mk8s/v1/node_group.proto index 34d6548..6cb283d 100644 --- a/nebius/mk8s/v1/node_group.proto +++ b/nebius/mk8s/v1/node_group.proto @@ -111,30 +111,9 @@ message NodeTemplate { GpuSettings gpu_settings = 13; // OS version that will be used to create the boot disk of Compute Instances in the NodeGroup. - // Supported platform / Kubernetes version / OS / driver presets combinations - // * `gpu-l40s-a`, `gpu-l40s-d`, `gpu-h100-sxm`, `gpu-h200-sxm`, `cpu-e1`, `cpu-e2`, `cpu-d3`: - // * `drivers_preset`: `""` - // * `version`: 1.30 → `"ubuntu22.04"` - // * `version`: 1.31 → `"ubuntu22.04"` (default), `"ubuntu24.04"` - // * `gpu-l40s-a`, `gpu-l40s-d`, `gpu-h100-sxm`, `gpu-h200-sxm`: - // * `drivers_preset`: `"cuda12"` (CUDA 12.4) - // * `version`: 1.30, 1.31 → `"ubuntu22.04"` - // * `drivers_preset`: `"cuda12.4"` - // * `version`: 1.31 → `"ubuntu22.04"` - // * `drivers_preset`: `"cuda12.8"` - // * `version`: 1.31 → `"ubuntu24.04"` - // * `gpu-b200-sxm`: - // * `drivers_preset`: `""` - // * `version`: 1.30, 1.31 → `"ubuntu24.04"` - // * `drivers_preset`: `"cuda12"` (CUDA 12.8) - // * `version`: 1.30, 1.31 → `"ubuntu24.04"` - // * `drivers_preset`: `"cuda12.8"` - // * `version`: 1.31 → `"ubuntu24.04"` - // * `gpu-b200-sxm-a`: - // * `drivers_preset`: `""` - // * `version`: 1.31 → `"ubuntu24.04"` - // * `drivers_preset`: `"cuda12.8"` - // * `version`: 1.31 → `"ubuntu24.04"` + // Supported OS depend on the platform and Kubernetes version. + // To get the up-to-date list of supported OS for a given Kubernetes version and platform, run: + // nebius mk8s node-group get-compatibility-matrix --cluster-kubernetes-version VERSION --platform PLATFORM string os = 16; // Nebius Compute GPUCluster ID that will be attached to node. @@ -226,15 +205,11 @@ message NodeMetadataTemplate { // GPU-related settings. message GpuSettings { // Identifier of the predefined set of drivers included in the ComputeImage deployed on ComputeInstances that are part of the NodeGroup. - // Supported presets for different platform / Kubernetes version combinations: - // * `gpu-l40s-a`, `gpu-l40s-d`, `gpu-h100-sxm`, `gpu-h200-sxm`: - // * `version`: 1.30 → `"cuda12"` (CUDA 12.4) - // * `version`: 1.31 → `"cuda12"` (CUDA 12.4), `"cuda12.4"`, `"cuda12.8"` - // * `gpu-b200-sxm`: - // * `version`: 1.31 → `"cuda12"` (CUDA 12.8), `"cuda12.8"` - // * `gpu-b200-sxm-a`: - // * `version`: 1.31 → `"cuda12.8"` - string drivers_preset = 1 [(buf.validate.field).required = true]; + // Supported presets depend on the platform and Kubernetes version. + // To get the up-to-date list of supported presets for a given Kubernetes version and platform, run: + // nebius mk8s node-group get-compatibility-matrix --cluster-kubernetes-version VERSION --platform PLATFORM + // Leave empty for GPU nodes that do not have preinstalled drivers, including DRA-enabled node groups. + string drivers_preset = 1; } message GpuClusterSpec {