@yandex-cloud/nodejs-sdk
Version:
Yandex.Cloud NodeJS SDK
1,031 lines • 203 kB
TypeScript
/// <reference types="node" />
import { ChannelCredentials, ChannelOptions, UntypedServiceImplementation, handleUnaryCall, Client, ClientUnaryCall, Metadata, CallOptions, ServiceError } from "@grpc/grpc-js";
import _m0 from "protobufjs/minimal";
import { FieldMask } from "../../../../google/protobuf/field_mask";
import { NodeTemplate, Node, Taint } from "../../../../yandex/cloud/k8s/v1/node";
import { ScalePolicy, NodeGroupAllocationPolicy, DeployPolicy, NodeGroupMaintenancePolicy, NodeGroup } from "../../../../yandex/cloud/k8s/v1/node_group";
import { UpdateVersionSpec } from "../../../../yandex/cloud/k8s/v1/version";
import { Operation } from "../../../../yandex/cloud/operation/operation";
export declare const protobufPackage = "yandex.cloud.k8s.v1";
export interface GetNodeGroupRequest {
$type: "yandex.cloud.k8s.v1.GetNodeGroupRequest";
/**
* ID of the node group to return.
* To get the node group ID use a [NodeGroupService.List] request.
*/
nodeGroupId: string;
}
export interface ListNodeGroupsRequest {
$type: "yandex.cloud.k8s.v1.ListNodeGroupsRequest";
/**
* ID of the folder to list node groups in.
* To get the folder ID use a [yandex.cloud.resourcemanager.v1.FolderService.List] request.
*/
folderId: string;
/**
* The maximum number of results per page to return. If the number of available
* results is larger than [page_size],
* the service returns a [ListNodeGroupsResponse.next_page_token]
* that can be used to get the next page of results in subsequent list requests.
* Default value: 100.
*/
pageSize: number;
/**
* Page token. To get the next page of results, set `page_token` to the
* [ListNodeGroupsResponse.next_page_token] returned by a previous list request.
*/
pageToken: string;
/**
* A filter expression that filters resources listed in the response.
* The expression must specify:
* 1. The field name. Currently you can use filtering only on [NodeGroup.name] field.
* 2. An `=` operator.
* 3. The value in double quotes (`"`). Must be 3-63 characters long and match the regular expression `[a-z][-a-z0-9]{1,61}[a-z0-9]`.
*/
filter: string;
}
export interface ListNodeGroupsResponse {
$type: "yandex.cloud.k8s.v1.ListNodeGroupsResponse";
/** List of node groups. */
nodeGroups: NodeGroup[];
/**
* This token allows you to get the next page of results for list requests. If the number of results
* is larger than [ListNodeGroupsRequest.page_size], use
* the `next_page_token` as the value
* for the [ListNodeGroupsRequest.page_token] query parameter
* in the next list request. Each subsequent list request will have its own
* `next_page_token` to continue paging through the results.
*/
nextPageToken: string;
}
export interface ListNodeGroupNodesRequest {
$type: "yandex.cloud.k8s.v1.ListNodeGroupNodesRequest";
/**
* ID of the node group to list.
* To get the node group ID use a [NodeGroupService.List] request.
*/
nodeGroupId: string;
/**
* The maximum number of results per page to return. If the number of available
* results is larger than [page_size],
* the service returns a [ListNodeGroupsResponse.next_page_token]
* that can be used to get the next page of results in subsequent list requests.
* Default value: 100.
*/
pageSize: number;
/**
* Page token. To get the next page of results, set `page_token` to the
* [ListNodeGroupNodesResponse.next_page_token] returned by a previous list request.
*/
pageToken: string;
}
export interface ListNodeGroupNodesResponse {
$type: "yandex.cloud.k8s.v1.ListNodeGroupNodesResponse";
/** List of nodes. */
nodes: Node[];
/**
* This token allows you to get the next page of results for list requests. If the number of results
* is larger than [ListNodeGroupNodesRequest.page_size], use
* the `next_page_token` as the value
* for the [ListNodeGroupNodesRequest.page_token] query parameter
* in the next list request. Each subsequent list request will have its own
* `next_page_token` to continue paging through the results.
*/
nextPageToken: string;
}
export interface DeleteNodeGroupRequest {
$type: "yandex.cloud.k8s.v1.DeleteNodeGroupRequest";
/**
* ID of the node group to delete.
* To get node group ID use a [NodeGroupService.List] request.
*/
nodeGroupId: string;
}
export interface DeleteNodeGroupMetadata {
$type: "yandex.cloud.k8s.v1.DeleteNodeGroupMetadata";
/** ID of the node group that is being deleted. */
nodeGroupId: string;
}
export interface UpdateNodeGroupRequest {
$type: "yandex.cloud.k8s.v1.UpdateNodeGroupRequest";
/**
* ID of the node group to update.
* To get the node group ID use a [NodeGroupService.List] request.
*/
nodeGroupId: string;
/** Field mask that specifies which fields of the node group are going to be updated. */
updateMask?: FieldMask;
/**
* Name of the node group.
* The name must be unique within the folder.
*/
name: string;
/** Description of the node group. */
description: string;
/**
* Resource labels as `key:value` pairs.
*
* Existing set of `labels` is completely replaced by the provided set.
*/
labels: {
[key: string]: string;
};
/**
* Node template for the node group.
* Change may trigger nodes rolling reboot or recreate.
*/
nodeTemplate?: NodeTemplate;
/** Scale policy of the node group. */
scalePolicy?: ScalePolicy;
/** Allocation policy of the node group by the zones and regions. */
allocationPolicy?: NodeGroupAllocationPolicy;
/**
* Deploy policy according to which the updates are rolled out. If not specified,
* the default is used.
*/
deployPolicy?: DeployPolicy;
/** Version of Kubernetes components that runs on the nodes. */
version?: UpdateVersionSpec;
/** Maintenance policy of the node group. */
maintenancePolicy?: NodeGroupMaintenancePolicy;
/** Support for unsafe sysctl parameters. For more details see [documentation](https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/). */
allowedUnsafeSysctls: string[];
/** Taints that are applied to the nodes of the node group at creation time. */
nodeTaints: Taint[];
/** Labels that are assigned to the nodes of the node group at creation time. */
nodeLabels: {
[key: string]: string;
};
}
export interface UpdateNodeGroupRequest_LabelsEntry {
$type: "yandex.cloud.k8s.v1.UpdateNodeGroupRequest.LabelsEntry";
key: string;
value: string;
}
export interface UpdateNodeGroupRequest_NodeLabelsEntry {
$type: "yandex.cloud.k8s.v1.UpdateNodeGroupRequest.NodeLabelsEntry";
key: string;
value: string;
}
export interface UpdateNodeGroupMetadata {
$type: "yandex.cloud.k8s.v1.UpdateNodeGroupMetadata";
/** ID of the Node group that is being updated. */
nodeGroupId: string;
}
export interface CreateNodeGroupRequest {
$type: "yandex.cloud.k8s.v1.CreateNodeGroupRequest";
/**
* ID of the Kubernetes cluster to create a node group in.
* To get the Kubernetes cluster ID, use a [ClusterService.List] request.
*/
clusterId: string;
/**
* Name of the node group.
* The name must be unique within the folder.
*/
name: string;
/** Description of the node group. */
description: string;
/** Resource labels as `key:value` pairs. */
labels: {
[key: string]: string;
};
/** Node template for creating the node group. */
nodeTemplate?: NodeTemplate;
/** Scale policy of the node group. */
scalePolicy?: ScalePolicy;
/** Allocation policy of the node group by the zones and regions. */
allocationPolicy?: NodeGroupAllocationPolicy;
/**
* Deploy policy according to which the updates are rolled out. If not specified,
* the default is used.
*/
deployPolicy?: DeployPolicy;
/** Version of Kubernetes components that runs on the nodes. */
version: string;
/** Maintenance policy of the node group. */
maintenancePolicy?: NodeGroupMaintenancePolicy;
/** Support for unsafe sysctl parameters. For more details see [documentation](https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/). */
allowedUnsafeSysctls: string[];
/** Taints that are applied to the nodes of the node group at creation time. */
nodeTaints: Taint[];
/** Labels that are assigned to the nodes of the node group at creation time. */
nodeLabels: {
[key: string]: string;
};
}
export interface CreateNodeGroupRequest_LabelsEntry {
$type: "yandex.cloud.k8s.v1.CreateNodeGroupRequest.LabelsEntry";
key: string;
value: string;
}
export interface CreateNodeGroupRequest_NodeLabelsEntry {
$type: "yandex.cloud.k8s.v1.CreateNodeGroupRequest.NodeLabelsEntry";
key: string;
value: string;
}
export interface CreateNodeGroupMetadata {
$type: "yandex.cloud.k8s.v1.CreateNodeGroupMetadata";
/** ID of the node group that is being created. */
nodeGroupId: string;
}
export interface AutoUpgradeNodeGroupMetadata {
$type: "yandex.cloud.k8s.v1.AutoUpgradeNodeGroupMetadata";
/** ID of the node group that is being auto upgraded. */
nodeGroupId: string;
}
export interface ListNodeGroupOperationsRequest {
$type: "yandex.cloud.k8s.v1.ListNodeGroupOperationsRequest";
/** ID of the node group to list operations for. */
nodeGroupId: string;
/**
* The maximum number of results per page that should be returned. If the number of available
* results is larger than [page_size], the service returns a [ListNodeGroupOperationsResponse.next_page_token]
* that can be used to get the next page of results in subsequent list requests.
* Default value: 100.
*/
pageSize: number;
/**
* Page token. To get the next page of results, set `page_token` to the
* [ListNodeGroupOperationsResponse.next_page_token] returned by a previous list request.
*/
pageToken: string;
/**
* A filter expression that filters resources listed in the response.
* Currently you can use filtering only on [NodeGroup.name] field.
*/
filter: string;
}
export interface ListNodeGroupOperationsResponse {
$type: "yandex.cloud.k8s.v1.ListNodeGroupOperationsResponse";
/** List of operations for the specified node group. */
operations: Operation[];
/**
* This token allows you to get the next page of results for list requests. If the number of results
* is larger than [ListNodeGroupOperationsRequest.page_size], use the `next_page_token` as the value
* for the [ListNodeGroupOperationsRequest.page_token] query parameter in the next list request.
* Each subsequent list request will have its own `next_page_token` to continue paging through the results.
*/
nextPageToken: string;
}
export declare const GetNodeGroupRequest: {
$type: "yandex.cloud.k8s.v1.GetNodeGroupRequest";
encode(message: GetNodeGroupRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number | undefined): GetNodeGroupRequest;
fromJSON(object: any): GetNodeGroupRequest;
toJSON(message: GetNodeGroupRequest): unknown;
fromPartial<I extends {
nodeGroupId?: string | undefined;
} & {
nodeGroupId?: string | undefined;
} & Record<Exclude<keyof I, "$type" | "nodeGroupId">, never>>(object: I): GetNodeGroupRequest;
};
export declare const ListNodeGroupsRequest: {
$type: "yandex.cloud.k8s.v1.ListNodeGroupsRequest";
encode(message: ListNodeGroupsRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListNodeGroupsRequest;
fromJSON(object: any): ListNodeGroupsRequest;
toJSON(message: ListNodeGroupsRequest): unknown;
fromPartial<I extends {
pageSize?: number | undefined;
pageToken?: string | undefined;
filter?: string | undefined;
folderId?: string | undefined;
} & {
pageSize?: number | undefined;
pageToken?: string | undefined;
filter?: string | undefined;
folderId?: string | undefined;
} & Record<Exclude<keyof I, "$type" | "pageSize" | "pageToken" | "filter" | "folderId">, never>>(object: I): ListNodeGroupsRequest;
};
export declare const ListNodeGroupsResponse: {
$type: "yandex.cloud.k8s.v1.ListNodeGroupsResponse";
encode(message: ListNodeGroupsResponse, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListNodeGroupsResponse;
fromJSON(object: any): ListNodeGroupsResponse;
toJSON(message: ListNodeGroupsResponse): unknown;
fromPartial<I extends {
nextPageToken?: string | undefined;
nodeGroups?: {
description?: string | undefined;
id?: string | undefined;
name?: string | undefined;
createdAt?: Date | undefined;
status?: import("../../../../yandex/cloud/k8s/v1/node_group").NodeGroup_Status | undefined;
labels?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
allocationPolicy?: {
locations?: {
subnetId?: string | undefined;
zoneId?: string | undefined;
}[] | undefined;
} | undefined;
maintenancePolicy?: {
autoUpgrade?: boolean | undefined;
maintenanceWindow?: {
anytime?: {} | undefined;
dailyMaintenanceWindow?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
} | undefined;
weeklyMaintenanceWindow?: {
daysOfWeek?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined;
}[] | undefined;
} | undefined;
} | undefined;
autoRepair?: boolean | undefined;
} | undefined;
scalePolicy?: {
fixedScale?: {
size?: number | undefined;
} | undefined;
autoScale?: {
maxSize?: number | undefined;
initialSize?: number | undefined;
minSize?: number | undefined;
} | undefined;
} | undefined;
deployPolicy?: {
maxUnavailable?: number | undefined;
maxExpansion?: number | undefined;
} | undefined;
instanceGroupId?: string | undefined;
clusterId?: string | undefined;
versionInfo?: {
currentVersion?: string | undefined;
newRevisionAvailable?: boolean | undefined;
newRevisionSummary?: string | undefined;
versionDeprecated?: boolean | undefined;
} | undefined;
nodeVersion?: string | undefined;
allowedUnsafeSysctls?: string[] | undefined;
nodeTemplate?: {
name?: string | undefined;
metadata?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
labels?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
platformId?: string | undefined;
gpuSettings?: {
gpuClusterId?: string | undefined;
gpuEnvironment?: import("../../../../yandex/cloud/k8s/v1/node").GpuSettings_GpuEnvironment | undefined;
} | undefined;
schedulingPolicy?: {
preemptible?: boolean | undefined;
} | undefined;
networkSettings?: {
type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_NetworkSettings_Type | undefined;
} | undefined;
placementPolicy?: {
placementGroupId?: string | undefined;
} | undefined;
resourcesSpec?: {
memory?: number | undefined;
cores?: number | undefined;
coreFraction?: number | undefined;
gpus?: number | undefined;
} | undefined;
bootDiskSpec?: {
diskTypeId?: string | undefined;
diskSize?: number | undefined;
} | undefined;
networkInterfaceSpecs?: {
securityGroupIds?: string[] | undefined;
primaryV4AddressSpec?: {
oneToOneNatSpec?: {
ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined;
} | undefined;
dnsRecordSpecs?: {
ttl?: number | undefined;
fqdn?: string | undefined;
dnsZoneId?: string | undefined;
ptr?: boolean | undefined;
}[] | undefined;
} | undefined;
primaryV6AddressSpec?: {
oneToOneNatSpec?: {
ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined;
} | undefined;
dnsRecordSpecs?: {
ttl?: number | undefined;
fqdn?: string | undefined;
dnsZoneId?: string | undefined;
ptr?: boolean | undefined;
}[] | undefined;
} | undefined;
subnetIds?: string[] | undefined;
}[] | undefined;
v4AddressSpec?: {
oneToOneNatSpec?: {
ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined;
} | undefined;
dnsRecordSpecs?: {
ttl?: number | undefined;
fqdn?: string | undefined;
dnsZoneId?: string | undefined;
ptr?: boolean | undefined;
}[] | undefined;
} | undefined;
containerRuntimeSettings?: {
type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_ContainerRuntimeSettings_Type | undefined;
} | undefined;
containerNetworkSettings?: {
podMtu?: number | undefined;
} | undefined;
} | undefined;
nodeTaints?: {
value?: string | undefined;
key?: string | undefined;
effect?: import("../../../../yandex/cloud/k8s/v1/node").Taint_Effect | undefined;
}[] | undefined;
nodeLabels?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
}[] | undefined;
} & {
nextPageToken?: string | undefined;
nodeGroups?: ({
description?: string | undefined;
id?: string | undefined;
name?: string | undefined;
createdAt?: Date | undefined;
status?: import("../../../../yandex/cloud/k8s/v1/node_group").NodeGroup_Status | undefined;
labels?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
allocationPolicy?: {
locations?: {
subnetId?: string | undefined;
zoneId?: string | undefined;
}[] | undefined;
} | undefined;
maintenancePolicy?: {
autoUpgrade?: boolean | undefined;
maintenanceWindow?: {
anytime?: {} | undefined;
dailyMaintenanceWindow?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
} | undefined;
weeklyMaintenanceWindow?: {
daysOfWeek?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined;
}[] | undefined;
} | undefined;
} | undefined;
autoRepair?: boolean | undefined;
} | undefined;
scalePolicy?: {
fixedScale?: {
size?: number | undefined;
} | undefined;
autoScale?: {
maxSize?: number | undefined;
initialSize?: number | undefined;
minSize?: number | undefined;
} | undefined;
} | undefined;
deployPolicy?: {
maxUnavailable?: number | undefined;
maxExpansion?: number | undefined;
} | undefined;
instanceGroupId?: string | undefined;
clusterId?: string | undefined;
versionInfo?: {
currentVersion?: string | undefined;
newRevisionAvailable?: boolean | undefined;
newRevisionSummary?: string | undefined;
versionDeprecated?: boolean | undefined;
} | undefined;
nodeVersion?: string | undefined;
allowedUnsafeSysctls?: string[] | undefined;
nodeTemplate?: {
name?: string | undefined;
metadata?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
labels?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
platformId?: string | undefined;
gpuSettings?: {
gpuClusterId?: string | undefined;
gpuEnvironment?: import("../../../../yandex/cloud/k8s/v1/node").GpuSettings_GpuEnvironment | undefined;
} | undefined;
schedulingPolicy?: {
preemptible?: boolean | undefined;
} | undefined;
networkSettings?: {
type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_NetworkSettings_Type | undefined;
} | undefined;
placementPolicy?: {
placementGroupId?: string | undefined;
} | undefined;
resourcesSpec?: {
memory?: number | undefined;
cores?: number | undefined;
coreFraction?: number | undefined;
gpus?: number | undefined;
} | undefined;
bootDiskSpec?: {
diskTypeId?: string | undefined;
diskSize?: number | undefined;
} | undefined;
networkInterfaceSpecs?: {
securityGroupIds?: string[] | undefined;
primaryV4AddressSpec?: {
oneToOneNatSpec?: {
ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined;
} | undefined;
dnsRecordSpecs?: {
ttl?: number | undefined;
fqdn?: string | undefined;
dnsZoneId?: string | undefined;
ptr?: boolean | undefined;
}[] | undefined;
} | undefined;
primaryV6AddressSpec?: {
oneToOneNatSpec?: {
ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined;
} | undefined;
dnsRecordSpecs?: {
ttl?: number | undefined;
fqdn?: string | undefined;
dnsZoneId?: string | undefined;
ptr?: boolean | undefined;
}[] | undefined;
} | undefined;
subnetIds?: string[] | undefined;
}[] | undefined;
v4AddressSpec?: {
oneToOneNatSpec?: {
ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined;
} | undefined;
dnsRecordSpecs?: {
ttl?: number | undefined;
fqdn?: string | undefined;
dnsZoneId?: string | undefined;
ptr?: boolean | undefined;
}[] | undefined;
} | undefined;
containerRuntimeSettings?: {
type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_ContainerRuntimeSettings_Type | undefined;
} | undefined;
containerNetworkSettings?: {
podMtu?: number | undefined;
} | undefined;
} | undefined;
nodeTaints?: {
value?: string | undefined;
key?: string | undefined;
effect?: import("../../../../yandex/cloud/k8s/v1/node").Taint_Effect | undefined;
}[] | undefined;
nodeLabels?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
}[] & ({
description?: string | undefined;
id?: string | undefined;
name?: string | undefined;
createdAt?: Date | undefined;
status?: import("../../../../yandex/cloud/k8s/v1/node_group").NodeGroup_Status | undefined;
labels?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
allocationPolicy?: {
locations?: {
subnetId?: string | undefined;
zoneId?: string | undefined;
}[] | undefined;
} | undefined;
maintenancePolicy?: {
autoUpgrade?: boolean | undefined;
maintenanceWindow?: {
anytime?: {} | undefined;
dailyMaintenanceWindow?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
} | undefined;
weeklyMaintenanceWindow?: {
daysOfWeek?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined;
}[] | undefined;
} | undefined;
} | undefined;
autoRepair?: boolean | undefined;
} | undefined;
scalePolicy?: {
fixedScale?: {
size?: number | undefined;
} | undefined;
autoScale?: {
maxSize?: number | undefined;
initialSize?: number | undefined;
minSize?: number | undefined;
} | undefined;
} | undefined;
deployPolicy?: {
maxUnavailable?: number | undefined;
maxExpansion?: number | undefined;
} | undefined;
instanceGroupId?: string | undefined;
clusterId?: string | undefined;
versionInfo?: {
currentVersion?: string | undefined;
newRevisionAvailable?: boolean | undefined;
newRevisionSummary?: string | undefined;
versionDeprecated?: boolean | undefined;
} | undefined;
nodeVersion?: string | undefined;
allowedUnsafeSysctls?: string[] | undefined;
nodeTemplate?: {
name?: string | undefined;
metadata?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
labels?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
platformId?: string | undefined;
gpuSettings?: {
gpuClusterId?: string | undefined;
gpuEnvironment?: import("../../../../yandex/cloud/k8s/v1/node").GpuSettings_GpuEnvironment | undefined;
} | undefined;
schedulingPolicy?: {
preemptible?: boolean | undefined;
} | undefined;
networkSettings?: {
type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_NetworkSettings_Type | undefined;
} | undefined;
placementPolicy?: {
placementGroupId?: string | undefined;
} | undefined;
resourcesSpec?: {
memory?: number | undefined;
cores?: number | undefined;
coreFraction?: number | undefined;
gpus?: number | undefined;
} | undefined;
bootDiskSpec?: {
diskTypeId?: string | undefined;
diskSize?: number | undefined;
} | undefined;
networkInterfaceSpecs?: {
securityGroupIds?: string[] | undefined;
primaryV4AddressSpec?: {
oneToOneNatSpec?: {
ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined;
} | undefined;
dnsRecordSpecs?: {
ttl?: number | undefined;
fqdn?: string | undefined;
dnsZoneId?: string | undefined;
ptr?: boolean | undefined;
}[] | undefined;
} | undefined;
primaryV6AddressSpec?: {
oneToOneNatSpec?: {
ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined;
} | undefined;
dnsRecordSpecs?: {
ttl?: number | undefined;
fqdn?: string | undefined;
dnsZoneId?: string | undefined;
ptr?: boolean | undefined;
}[] | undefined;
} | undefined;
subnetIds?: string[] | undefined;
}[] | undefined;
v4AddressSpec?: {
oneToOneNatSpec?: {
ipVersion?: import("../../../../yandex/cloud/k8s/v1/node").IpVersion | undefined;
} | undefined;
dnsRecordSpecs?: {
ttl?: number | undefined;
fqdn?: string | undefined;
dnsZoneId?: string | undefined;
ptr?: boolean | undefined;
}[] | undefined;
} | undefined;
containerRuntimeSettings?: {
type?: import("../../../../yandex/cloud/k8s/v1/node").NodeTemplate_ContainerRuntimeSettings_Type | undefined;
} | undefined;
containerNetworkSettings?: {
podMtu?: number | undefined;
} | undefined;
} | undefined;
nodeTaints?: {
value?: string | undefined;
key?: string | undefined;
effect?: import("../../../../yandex/cloud/k8s/v1/node").Taint_Effect | undefined;
}[] | undefined;
nodeLabels?: {
[x: string]: string | undefined;
[x: number]: string | undefined;
} | undefined;
} & {
description?: string | undefined;
id?: string | undefined;
name?: string | undefined;
createdAt?: Date | undefined;
status?: import("../../../../yandex/cloud/k8s/v1/node_group").NodeGroup_Status | undefined;
labels?: ({
[x: string]: string | undefined;
[x: number]: string | undefined;
} & {
[x: string]: string | undefined;
[x: number]: string | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["labels"], string | number>, never>) | undefined;
allocationPolicy?: ({
locations?: {
subnetId?: string | undefined;
zoneId?: string | undefined;
}[] | undefined;
} & {
locations?: ({
subnetId?: string | undefined;
zoneId?: string | undefined;
}[] & ({
subnetId?: string | undefined;
zoneId?: string | undefined;
} & {
subnetId?: string | undefined;
zoneId?: string | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["allocationPolicy"]["locations"][number], "$type" | "subnetId" | "zoneId">, never>)[] & Record<Exclude<keyof I["nodeGroups"][number]["allocationPolicy"]["locations"], "$type" | keyof {
subnetId?: string | undefined;
zoneId?: string | undefined;
}[]>, never>) | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["allocationPolicy"], "$type" | "locations">, never>) | undefined;
maintenancePolicy?: ({
autoUpgrade?: boolean | undefined;
maintenanceWindow?: {
anytime?: {} | undefined;
dailyMaintenanceWindow?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
} | undefined;
weeklyMaintenanceWindow?: {
daysOfWeek?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined;
}[] | undefined;
} | undefined;
} | undefined;
autoRepair?: boolean | undefined;
} & {
autoUpgrade?: boolean | undefined;
maintenanceWindow?: ({
anytime?: {} | undefined;
dailyMaintenanceWindow?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
} | undefined;
weeklyMaintenanceWindow?: {
daysOfWeek?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined;
}[] | undefined;
} | undefined;
} & {
anytime?: ({} & {} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["anytime"], "$type">, never>) | undefined;
dailyMaintenanceWindow?: ({
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
} & {
startTime?: ({
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} & {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["dailyMaintenanceWindow"]["startTime"], "$type" | "seconds" | "nanos" | "hours" | "minutes">, never>) | undefined;
duration?: ({
seconds?: number | undefined;
nanos?: number | undefined;
} & {
seconds?: number | undefined;
nanos?: number | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["dailyMaintenanceWindow"]["duration"], "$type" | "seconds" | "nanos">, never>) | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["dailyMaintenanceWindow"], "$type" | "startTime" | "duration">, never>) | undefined;
weeklyMaintenanceWindow?: ({
daysOfWeek?: {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined;
}[] | undefined;
} & {
daysOfWeek?: ({
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined;
}[] & ({
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined;
} & {
startTime?: ({
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} & {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["weeklyMaintenanceWindow"]["daysOfWeek"][number]["startTime"], "$type" | "seconds" | "nanos" | "hours" | "minutes">, never>) | undefined;
duration?: ({
seconds?: number | undefined;
nanos?: number | undefined;
} & {
seconds?: number | undefined;
nanos?: number | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["weeklyMaintenanceWindow"]["daysOfWeek"][number]["duration"], "$type" | "seconds" | "nanos">, never>) | undefined;
days?: (import("../../../../google/type/dayofweek").DayOfWeek[] & import("../../../../google/type/dayofweek").DayOfWeek[] & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["weeklyMaintenanceWindow"]["daysOfWeek"][number]["days"], "$type" | keyof import("../../../../google/type/dayofweek").DayOfWeek[]>, never>) | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["weeklyMaintenanceWindow"]["daysOfWeek"][number], "$type" | "startTime" | "duration" | "days">, never>)[] & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["weeklyMaintenanceWindow"]["daysOfWeek"], "$type" | keyof {
startTime?: {
seconds?: number | undefined;
nanos?: number | undefined;
hours?: number | undefined;
minutes?: number | undefined;
} | undefined;
duration?: {
seconds?: number | undefined;
nanos?: number | undefined;
} | undefined;
days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined;
}[]>, never>) | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"]["weeklyMaintenanceWindow"], "$type" | "daysOfWeek">, never>) | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"]["maintenanceWindow"], "$type" | "anytime" | "dailyMaintenanceWindow" | "weeklyMaintenanceWindow">, never>) | undefined;
autoRepair?: boolean | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["maintenancePolicy"], "$type" | "autoUpgrade" | "maintenanceWindow" | "autoRepair">, never>) | undefined;
scalePolicy?: ({
fixedScale?: {
size?: number | undefined;
} | undefined;
autoScale?: {
maxSize?: number | undefined;
initialSize?: number | undefined;
minSize?: number | undefined;
} | undefined;
} & {
fixedScale?: ({
size?: number | undefined;
} & {
size?: number | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["scalePolicy"]["fixedScale"], "$type" | "size">, never>) | undefined;
autoScale?: ({
maxSize?: number | undefined;
initialSize?: number | undefined;
minSize?: number | undefined;
} & {
maxSize?: number | undefined;
initialSize?: number | undefined;
minSize?: number | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["scalePolicy"]["autoScale"], "$type" | "maxSize" | "initialSize" | "minSize">, never>) | undefined;
} & Record<Exclude<keyof I["nodeGroups"][number]["scalePolicy"], "$type" | "fixedScale" | "autoScale">, never>) | undefined;
deployPolicy?: ({
maxUnavailable?: number | undefined;
maxExpansion?: number | undefined;
} & {
maxUnavailable?: number | undefined;
maxExpansion?: number | undefin