import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; import * as enums from "../../types/enums"; /** * Creates a new Data Fusion instance in the specified project and location. * Auto-naming is currently not supported for this resource. */ export declare class Instance extends pulumi.CustomResource { /** * Get an existing Instance 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): Instance; /** * Returns true if the given object is an instance of Instance. 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 Instance; /** * List of accelerators enabled for this CDF instance. */ readonly accelerators: pulumi.Output; /** * Endpoint on which the REST APIs is accessible. */ readonly apiEndpoint: pulumi.Output; /** * Available versions that the instance can be upgraded to using UpdateInstanceRequest. */ readonly availableVersion: pulumi.Output; /** * The time the instance was created. */ readonly createTime: pulumi.Output; /** * The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. */ readonly cryptoKeyConfig: pulumi.Output; /** * User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines. This allows users to have fine-grained access control on Dataproc's accesses to cloud resources. */ readonly dataprocServiceAccount: pulumi.Output; /** * A description of this instance. */ readonly description: pulumi.Output; /** * If the instance state is DISABLED, the reason for disabling the instance. */ readonly disabledReason: pulumi.Output; /** * Display name for an instance. */ readonly displayName: pulumi.Output; /** * Option to enable granular role-based access control. */ readonly enableRbac: pulumi.Output; /** * Option to enable Stackdriver Logging. */ readonly enableStackdriverLogging: pulumi.Output; /** * Option to enable Stackdriver Monitoring. */ readonly enableStackdriverMonitoring: pulumi.Output; /** * Option to enable zone separation. */ readonly enableZoneSeparation: pulumi.Output; /** * Option to enable and pass metadata for event publishing. */ readonly eventPublishConfig: pulumi.Output; /** * Cloud Storage bucket generated by Data Fusion in the customer project. */ readonly gcsBucket: pulumi.Output; /** * Required. The name of the instance to create. */ readonly instanceId: pulumi.Output; /** * The resource labels for instance to use to annotate any related underlying resources such as Compute Engine VMs. The character '=' is not allowed to be used within the labels. */ readonly labels: pulumi.Output<{ [key: string]: string; }>; readonly location: pulumi.Output; /** * The name of this instance is in the form of projects/{project}/locations/{location}/instances/{instance}. */ readonly name: pulumi.Output; /** * Network configuration options. These are required when a private Data Fusion instance is to be created. */ readonly networkConfig: pulumi.Output; /** * Map of additional options used to configure the behavior of Data Fusion instance. */ readonly options: pulumi.Output<{ [key: string]: string; }>; /** * P4 service account for the customer project. */ readonly p4ServiceAccount: pulumi.Output; /** * Optional. Current patch revision of the Data Fusion. */ readonly patchRevision: pulumi.Output; /** * Specifies whether the Data Fusion instance should be private. If set to true, all Data Fusion nodes will have private IP addresses and will not be able to access the public internet. */ readonly privateInstance: pulumi.Output; readonly project: pulumi.Output; /** * Reserved for future use. */ readonly satisfiesPzs: pulumi.Output; /** * Deprecated. Use tenant_project_id instead to extract the tenant project ID. * * @deprecated Output only. Deprecated. Use tenant_project_id instead to extract the tenant project ID. */ readonly serviceAccount: pulumi.Output; /** * Endpoint on which the Data Fusion UI is accessible. */ readonly serviceEndpoint: pulumi.Output; /** * The current state of this Data Fusion instance. */ readonly state: pulumi.Output; /** * Additional information about the current state of this Data Fusion instance if available. */ readonly stateMessage: pulumi.Output; /** * The name of the tenant project. */ readonly tenantProjectId: pulumi.Output; /** * Instance type. */ readonly type: pulumi.Output; /** * The time the instance was last updated. */ readonly updateTime: pulumi.Output; /** * Current version of Data Fusion. */ readonly version: pulumi.Output; /** * Endpoint on which the Data Fusion UI is accessible to third-party users. */ readonly workforceIdentityServiceEndpoint: pulumi.Output; /** * Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field. */ readonly zone: pulumi.Output; /** * Create a Instance 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: InstanceArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Instance resource. */ export interface InstanceArgs { /** * The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. */ cryptoKeyConfig?: pulumi.Input; /** * User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines. This allows users to have fine-grained access control on Dataproc's accesses to cloud resources. */ dataprocServiceAccount?: pulumi.Input; /** * A description of this instance. */ description?: pulumi.Input; /** * Display name for an instance. */ displayName?: pulumi.Input; /** * Option to enable granular role-based access control. */ enableRbac?: pulumi.Input; /** * Option to enable Stackdriver Logging. */ enableStackdriverLogging?: pulumi.Input; /** * Option to enable Stackdriver Monitoring. */ enableStackdriverMonitoring?: pulumi.Input; /** * Option to enable zone separation. */ enableZoneSeparation?: pulumi.Input; /** * Option to enable and pass metadata for event publishing. */ eventPublishConfig?: pulumi.Input; /** * Required. The name of the instance to create. */ instanceId: pulumi.Input; /** * The resource labels for instance to use to annotate any related underlying resources such as Compute Engine VMs. The character '=' is not allowed to be used within the labels. */ labels?: pulumi.Input<{ [key: string]: pulumi.Input; }>; location?: pulumi.Input; /** * Network configuration options. These are required when a private Data Fusion instance is to be created. */ networkConfig?: pulumi.Input; /** * Map of additional options used to configure the behavior of Data Fusion instance. */ options?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * Optional. Current patch revision of the Data Fusion. */ patchRevision?: pulumi.Input; /** * Specifies whether the Data Fusion instance should be private. If set to true, all Data Fusion nodes will have private IP addresses and will not be able to access the public internet. */ privateInstance?: pulumi.Input; project?: pulumi.Input; /** * Instance type. */ type: pulumi.Input; /** * Current version of Data Fusion. */ version?: pulumi.Input; /** * Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field. */ zone?: pulumi.Input; }