import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; /** * Creates a new worker pool with a specified size and configuration. Returns a long running operation which contains a worker pool on completion. While the long running operation is in progress, any call to `GetWorkerPool` returns a worker pool in state `CREATING`. */ export declare class WorkerPool extends pulumi.CustomResource { /** * Get an existing WorkerPool 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): WorkerPool; /** * Returns true if the given object is an instance of WorkerPool. 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 WorkerPool; /** * The autoscale policy to apply on a pool. */ readonly autoscale: pulumi.Output; /** * Channel specifies the release channel of the pool. */ readonly channel: pulumi.Output; readonly instanceId: pulumi.Output; /** * WorkerPool resource name formatted as: `projects/[PROJECT_ID]/instances/[INSTANCE_ID]/workerpools/[POOL_ID]`. name should not be populated when creating a worker pool since it is provided in the `poolId` field. */ readonly name: pulumi.Output; readonly project: pulumi.Output; /** * State of the worker pool. */ readonly state: pulumi.Output; /** * Specifies the properties, such as machine type and disk size, used for creating workers in a worker pool. */ readonly workerConfig: pulumi.Output; /** * The desired number of workers in the worker pool. Must be a value between 0 and 15000. */ readonly workerCount: pulumi.Output; /** * Create a WorkerPool 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: WorkerPoolArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a WorkerPool resource. */ export interface WorkerPoolArgs { /** * The autoscale policy to apply on a pool. */ autoscale?: pulumi.Input; /** * Channel specifies the release channel of the pool. */ channel?: pulumi.Input; instanceId: pulumi.Input; /** * WorkerPool resource name formatted as: `projects/[PROJECT_ID]/instances/[INSTANCE_ID]/workerpools/[POOL_ID]`. name should not be populated when creating a worker pool since it is provided in the `poolId` field. */ name?: pulumi.Input; /** * Resource name of the instance in which to create the new worker pool. Format: `projects/[PROJECT_ID]/instances/[INSTANCE_ID]`. */ parent?: pulumi.Input; /** * ID of the created worker pool. A valid pool ID must: be 6-50 characters long, contain only lowercase letters, digits, hyphens and underscores, start with a lowercase letter, and end with a lowercase letter or a digit. */ poolId?: pulumi.Input; project?: pulumi.Input; /** * Specifies the properties, such as machine type and disk size, used for creating workers in a worker pool. */ workerConfig?: pulumi.Input; /** * The desired number of workers in the worker pool. Must be a value between 0 and 15000. */ workerCount?: pulumi.Input; }