diff --git a/nebius/common/v1/warning.proto b/nebius/common/v1/warning.proto index 1df74ed..85ca3f8 100644 --- a/nebius/common/v1/warning.proto +++ b/nebius/common/v1/warning.proto @@ -84,5 +84,11 @@ message Warning { // Not-recommended value was used in the request. CODE_NOT_RECOMMENDED_SPEC_VALUE_REQUEST = 7; + + // Nebius ID in the request has an invalid resource type. + CODE_INVALID_NEBIUS_ID_REQUEST = 8; + + // Nebius ID in the request has an invalid format. + CODE_INVALID_NEBIUS_ID_FORMAT_REQUEST = 9; } } diff --git a/nebius/compute/v1/network_interface.proto b/nebius/compute/v1/network_interface.proto index 1c4e259..1017dd1 100644 --- a/nebius/compute/v1/network_interface.proto +++ b/nebius/compute/v1/network_interface.proto @@ -100,6 +100,9 @@ message NetworkInterfaceStatus { // FQDN of the interface string fqdn = 9; + + // Effective security groups associated with the network interface. + repeated SecurityGroupStatus security_groups = 10; } message IPAddressStatus { @@ -131,3 +134,8 @@ message SecurityGroup { // Security group identifier string id = 1; } + +message SecurityGroupStatus { + // Security group identifier + string id = 1; +} diff --git a/nebius/mk8s/v1/node_group.proto b/nebius/mk8s/v1/node_group.proto index 9ce2d76..c6de60e 100644 --- a/nebius/mk8s/v1/node_group.proto +++ b/nebius/mk8s/v1/node_group.proto @@ -49,7 +49,7 @@ message NodeGroupSpec { oneof size { option (buf.validate.oneof).required = true; - // Number of nodes in the group. Can be changed manually at any time. + // Number of nodes in the group. Can be changed manually at any time, except for a node group with NVLink. int64 fixed_node_count = 2 [(buf.validate.field) = { int64: { lte: 100 @@ -62,6 +62,16 @@ message NodeGroupSpec { NodeGroupAutoscalingSpec autoscaling = 5; } + option (buf.validate.message) = { + cel: [ + { + id: "node_group_spec.nvlink_autoscaling" + message: "autoscaling cannot be used for a node group with NVLink" + expression: "!(has(this.template.nvlink) && has(this.autoscaling))" + } + ] + }; + // Parameters for Kubernetes Node object and Nebius Compute Instance // If not written opposite a NodeTemplate field update will cause NodeGroup roll-out according NodeGroupDeploymentStrategy. NodeTemplate template = 3 [(buf.validate.field).required = true]; diff --git a/nebius/vpc/v1/route.proto b/nebius/vpc/v1/route.proto index 0555cbe..f16eff9 100644 --- a/nebius/vpc/v1/route.proto +++ b/nebius/vpc/v1/route.proto @@ -57,7 +57,7 @@ message DestinationMatch { { id: "string.valid_cidr" message: "destination.cidr must be a valid and specified CIDR" - expression: "this.matches('^([0-9]{1,3}\\\\.){3}[0-9]{1,3}/[0-9]+$') && this.isIpPrefix(4, true)" + expression: "this.isIpPrefix(true)" } ] required: true