import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../../types"; /** * Creates a NodeGroup resource in the specified project using the data included in the request. */ export declare class NodeGroup extends pulumi.CustomResource { /** * Get an existing NodeGroup 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): NodeGroup; /** * Returns true if the given object is an instance of NodeGroup. 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 NodeGroup; /** * Specifies how autoscaling should behave. */ readonly autoscalingPolicy: 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 fingerprint: pulumi.Output; /** * [Output Only] The type of the resource. Always compute#nodeGroup for node group. */ readonly kind: pulumi.Output; /** * An opaque location hint used to place the Node close to other resources. This field is for use by internal tools that use the public API. The location hint here on the NodeGroup overrides any location_hint present in the NodeTemplate. */ readonly locationHint: pulumi.Output; /** * Specifies how to handle instances when a node in the group undergoes maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information, see Maintenance policies. */ readonly maintenancePolicy: pulumi.Output; readonly maintenanceWindow: 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; /** * URL of the node template to create the node group from. */ readonly nodeTemplate: 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; /** * [Output Only] The total number of nodes in the node group. */ readonly size: pulumi.Output; readonly status: pulumi.Output; /** * [Output Only] The name of the zone where the node group resides, such as us-central1-a. */ readonly zone: pulumi.Output; /** * Create a NodeGroup 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: NodeGroupArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a NodeGroup resource. */ export interface NodeGroupArgs { /** * Specifies how autoscaling should behave. */ readonly autoscalingPolicy?: 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 fingerprint?: pulumi.Input; /** * [Output Only] The unique identifier for the resource. This identifier is defined by the server. */ readonly id?: pulumi.Input; readonly initialNodeCount: pulumi.Input; /** * [Output Only] The type of the resource. Always compute#nodeGroup for node group. */ readonly kind?: pulumi.Input; /** * An opaque location hint used to place the Node close to other resources. This field is for use by internal tools that use the public API. The location hint here on the NodeGroup overrides any location_hint present in the NodeTemplate. */ readonly locationHint?: pulumi.Input; /** * Specifies how to handle instances when a node in the group undergoes maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information, see Maintenance policies. */ readonly maintenancePolicy?: pulumi.Input; readonly maintenanceWindow?: 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; readonly nodeGroup: pulumi.Input; /** * URL of the node template to create the node group from. */ readonly nodeTemplate?: pulumi.Input; readonly project: 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; /** * [Output Only] The total number of nodes in the node group. */ readonly size?: pulumi.Input; readonly status?: pulumi.Input; /** * [Output Only] The name of the zone where the node group resides, such as us-central1-a. */ readonly zone: pulumi.Input; }