import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../../types"; /** * Creates a NodeTemplate resource in the specified project using the data included in the request. */ export declare class NodeTemplate extends pulumi.CustomResource { /** * Get an existing NodeTemplate resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): NodeTemplate; /** * Returns true if the given object is an instance of NodeTemplate. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is NodeTemplate; readonly accelerators: pulumi.Output; /** * CPU overcommit. */ readonly cpuOvercommitType: pulumi.Output; /** * [Output Only] Creation timestamp in RFC3339 text format. */ readonly creationTimestamp: pulumi.Output; /** * An optional description of this resource. Provide this property when you create the resource. */ readonly description: pulumi.Output; readonly disks: pulumi.Output; /** * [Output Only] The type of the resource. Always compute#nodeTemplate for node templates. */ readonly kind: pulumi.Output; /** * The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. */ readonly name: pulumi.Output; /** * Labels to use for node affinity, which will be used in instance scheduling. */ readonly nodeAffinityLabels: pulumi.Output<{ [key: string]: string; }>; /** * The node type to use for nodes group that are created from this template. */ readonly nodeType: pulumi.Output; /** * The flexible properties of the desired node type. Node groups that use this node template will create nodes of a type that matches these properties. * * This field is mutually exclusive with the node_type property; you can only define one or the other, but not both. */ readonly nodeTypeFlexibility: pulumi.Output; /** * [Output Only] The name of the region where the node template resides, such as us-central1. */ readonly region: pulumi.Output; /** * [Output Only] Server-defined URL for the resource. */ readonly selfLink: pulumi.Output; /** * [Output Only] Server-defined URL for this resource with the resource id. */ readonly selfLinkWithId: pulumi.Output; /** * Sets the binding properties for the physical server. Valid values include: * - [Default] RESTART_NODE_ON_ANY_SERVER: Restarts VMs on any available physical server * - RESTART_NODE_ON_MINIMAL_SERVER: Restarts VMs on the same physical server whenever possible * * See Sole-tenant node options for more information. */ readonly serverBinding: pulumi.Output; /** * [Output Only] The status of the node template. One of the following values: CREATING, READY, and DELETING. */ readonly status: pulumi.Output; /** * [Output Only] An optional, human-readable explanation of the status. */ readonly statusMessage: pulumi.Output; /** * Create a NodeTemplate resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: NodeTemplateArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a NodeTemplate resource. */ export interface NodeTemplateArgs { readonly accelerators?: pulumi.Input[]>; /** * CPU overcommit. */ readonly cpuOvercommitType?: pulumi.Input; /** * [Output Only] Creation timestamp in RFC3339 text format. */ readonly creationTimestamp?: pulumi.Input; /** * An optional description of this resource. Provide this property when you create the resource. */ readonly description?: pulumi.Input; readonly disks?: pulumi.Input[]>; /** * [Output Only] The unique identifier for the resource. This identifier is defined by the server. */ readonly id?: pulumi.Input; /** * [Output Only] The type of the resource. Always compute#nodeTemplate for node templates. */ readonly kind?: pulumi.Input; /** * The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. */ readonly name?: pulumi.Input; /** * Labels to use for node affinity, which will be used in instance scheduling. */ readonly nodeAffinityLabels?: pulumi.Input<{ [key: string]: pulumi.Input; }>; readonly nodeTemplate: pulumi.Input; /** * The node type to use for nodes group that are created from this template. */ readonly nodeType?: pulumi.Input; /** * The flexible properties of the desired node type. Node groups that use this node template will create nodes of a type that matches these properties. * * This field is mutually exclusive with the node_type property; you can only define one or the other, but not both. */ readonly nodeTypeFlexibility?: pulumi.Input; readonly project: pulumi.Input; /** * [Output Only] The name of the region where the node template resides, such as us-central1. */ readonly region: pulumi.Input; /** * [Output Only] Server-defined URL for the resource. */ readonly selfLink?: pulumi.Input; /** * [Output Only] Server-defined URL for this resource with the resource id. */ readonly selfLinkWithId?: pulumi.Input; /** * Sets the binding properties for the physical server. Valid values include: * - [Default] RESTART_NODE_ON_ANY_SERVER: Restarts VMs on any available physical server * - RESTART_NODE_ON_MINIMAL_SERVER: Restarts VMs on the same physical server whenever possible * * See Sole-tenant node options for more information. */ readonly serverBinding?: pulumi.Input; /** * [Output Only] The status of the node template. One of the following values: CREATING, READY, and DELETING. */ readonly status?: pulumi.Input; /** * [Output Only] An optional, human-readable explanation of the status. */ readonly statusMessage?: pulumi.Input; }