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 pipeline. For a batch pipeline, you can pass scheduler information. Data Pipelines uses the scheduler information to create an internal scheduler that runs jobs periodically. If the internal scheduler is not configured, you can use RunPipeline to run jobs. */ export declare class Pipeline extends pulumi.CustomResource { /** * Get an existing Pipeline 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): Pipeline; /** * Returns true if the given object is an instance of Pipeline. 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 Pipeline; /** * Immutable. The timestamp when the pipeline was initially created. Set by the Data Pipelines service. */ readonly createTime: pulumi.Output; /** * The display name of the pipeline. It can contain only letters ([A-Za-z]), numbers ([0-9]), hyphens (-), and underscores (_). */ readonly displayName: pulumi.Output; /** * Number of jobs. */ readonly jobCount: pulumi.Output; /** * Immutable. The timestamp when the pipeline was last modified. Set by the Data Pipelines service. */ readonly lastUpdateTime: pulumi.Output; readonly location: pulumi.Output; /** * The pipeline name. For example: `projects/PROJECT_ID/locations/LOCATION_ID/pipelines/PIPELINE_ID`. * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]), hyphens (-), colons (:), and periods (.). For more information, see [Identifying projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects). * `LOCATION_ID` is the canonical ID for the pipeline's location. The list of available locations can be obtained by calling `google.cloud.location.Locations.ListLocations`. Note that the Data Pipelines service is not available in all regions. It depends on Cloud Scheduler, an App Engine application, so it's only available in [App Engine regions](https://cloud.google.com/about/locations#region). * `PIPELINE_ID` is the ID of the pipeline. Must be unique for the selected project and location. */ readonly name: pulumi.Output; /** * Immutable. The sources of the pipeline (for example, Dataplex). The keys and values are set by the corresponding sources during pipeline creation. */ readonly pipelineSources: pulumi.Output<{ [key: string]: string; }>; readonly project: pulumi.Output; /** * Internal scheduling information for a pipeline. If this information is provided, periodic jobs will be created per the schedule. If not, users are responsible for creating jobs externally. */ readonly scheduleInfo: pulumi.Output; /** * Optional. A service account email to be used with the Cloud Scheduler job. If not specified, the default compute engine service account will be used. */ readonly schedulerServiceAccountEmail: pulumi.Output; /** * The state of the pipeline. When the pipeline is created, the state is set to 'PIPELINE_STATE_ACTIVE' by default. State changes can be requested by setting the state to stopping, paused, or resuming. State cannot be changed through UpdatePipeline requests. */ readonly state: pulumi.Output; /** * The type of the pipeline. This field affects the scheduling of the pipeline and the type of metrics to show for the pipeline. */ readonly type: pulumi.Output; /** * Workload information for creating new jobs. */ readonly workload: pulumi.Output; /** * Create a Pipeline 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: PipelineArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Pipeline resource. */ export interface PipelineArgs { /** * The display name of the pipeline. It can contain only letters ([A-Za-z]), numbers ([0-9]), hyphens (-), and underscores (_). */ displayName: pulumi.Input; location?: pulumi.Input; /** * The pipeline name. For example: `projects/PROJECT_ID/locations/LOCATION_ID/pipelines/PIPELINE_ID`. * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]), hyphens (-), colons (:), and periods (.). For more information, see [Identifying projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects). * `LOCATION_ID` is the canonical ID for the pipeline's location. The list of available locations can be obtained by calling `google.cloud.location.Locations.ListLocations`. Note that the Data Pipelines service is not available in all regions. It depends on Cloud Scheduler, an App Engine application, so it's only available in [App Engine regions](https://cloud.google.com/about/locations#region). * `PIPELINE_ID` is the ID of the pipeline. Must be unique for the selected project and location. */ name?: pulumi.Input; /** * Immutable. The sources of the pipeline (for example, Dataplex). The keys and values are set by the corresponding sources during pipeline creation. */ pipelineSources?: pulumi.Input<{ [key: string]: pulumi.Input; }>; project?: pulumi.Input; /** * Internal scheduling information for a pipeline. If this information is provided, periodic jobs will be created per the schedule. If not, users are responsible for creating jobs externally. */ scheduleInfo?: pulumi.Input; /** * Optional. A service account email to be used with the Cloud Scheduler job. If not specified, the default compute engine service account will be used. */ schedulerServiceAccountEmail?: pulumi.Input; /** * The state of the pipeline. When the pipeline is created, the state is set to 'PIPELINE_STATE_ACTIVE' by default. State changes can be requested by setting the state to stopping, paused, or resuming. State cannot be changed through UpdatePipeline requests. */ state: pulumi.Input; /** * The type of the pipeline. This field affects the scheduling of the pipeline and the type of metrics to show for the pipeline. */ type: pulumi.Input; /** * Workload information for creating new jobs. */ workload?: pulumi.Input; }