class Google::Apis::DataflowV1b3::Job
Defines a job to be run by the Cloud Dataflow service. nextID: 26
Attributes
The client's unique identifier of the job, re-used across retried attempts. If this field is set, the service will ensure its uniqueness. The request to create a job will fail if the service has knowledge of a previously submitted job with the same client's ID and job name. The caller may use this field to ensure idempotence of job creation across retried attempts to create a job. By default, the field is empty and, in that case, the service ignores it. Corresponds to the JSON property `clientRequestId` @return [String]
The timestamp when the job was initially created. Immutable and set by the Cloud Dataflow service. Corresponds to the JSON property `createTime` @return [String]
If this is specified, the job's initial state is populated from the given snapshot. Corresponds to the JSON property `createdFromSnapshotId` @return [String]
The current state of the job. Jobs are created in the `JOB_STATE_STOPPED` state unless otherwise specified. A job in the `JOB_STATE_RUNNING` state may asynchronously enter a terminal state. After a job has reached a terminal state, no further state updates may be made. This field may be mutated by the Cloud Dataflow service; callers cannot mutate it. Corresponds to the JSON property `currentState` @return [String]
The timestamp associated with the current state. Corresponds to the JSON property `currentStateTime` @return [String]
Describes the environment in which a Dataflow Job
runs. Corresponds to the JSON property `environment` @return [Google::Apis::DataflowV1b3::Environment]
Additional information about how a Cloud Dataflow job will be executed that isn't contained in the submitted job. Corresponds to the JSON property `executionInfo` @return [Google::Apis::DataflowV1b3::JobExecutionInfo]
The unique ID of this job. This field is set by the Cloud Dataflow service when the Job
is created, and is immutable for the life of the job. Corresponds to the JSON property `id` @return [String]
Metadata available primarily for filtering jobs. Will be included in the ListJob response and Job
SUMMARY view. Corresponds to the JSON property `jobMetadata` @return [Google::Apis::DataflowV1b3::JobMetadata]
User-defined labels for this job. The labels map can contain no more than 64 entries. Entries of the labels map are UTF8 strings that comply with the following restrictions: * Keys must conform to regexp: p`Ll`p`Lo“0,62` * Values must conform to regexp: [p`Ll`p`Lo`p`N`_-]`0,63` * Both keys and values are additionally constrained to be <= 128 bytes in size. Corresponds to the JSON property `labels` @return [Hash<String,String>]
The [regional endpoint] (cloud.google.com/dataflow/docs/concepts/ regional-endpoints) that contains this job. Corresponds to the JSON property `location` @return [String]
The user-specified Cloud Dataflow job name. Only one Job
with a given name may exist in a project at any given time. If a caller attempts to create a Job
with the same name as an already-existing Job
, the attempt returns the existing Job
. The name must match the regular expression `[a-z](`0,38` [a-z0-9])?` Corresponds to the JSON property `name` @return [String]
A descriptive representation of submitted pipeline as well as the executed form. This data is provided by the Dataflow service for ease of visualizing the pipeline and interpreting Dataflow provided metrics. Corresponds to the JSON property `pipelineDescription` @return [Google::Apis::DataflowV1b3::PipelineDescription]
The ID of the Cloud Platform project that the job belongs to. Corresponds to the JSON property `projectId` @return [String]
If this job is an update of an existing job, this field is the job ID of the job it replaced. When sending a `CreateJobRequest`, you can update a job by specifying it here. The job named here is stopped, and its intermediate state is transferred to this job. Corresponds to the JSON property `replaceJobId` @return [String]
If another job is an update of this job (and thus, this job is in ` JOB_STATE_UPDATED`), this field contains the ID of that job. Corresponds to the JSON property `replacedByJobId` @return [String]
The job's requested state. `UpdateJob` may be used to switch between the ` JOB_STATE_STOPPED` and `JOB_STATE_RUNNING` states, by setting requested_state. `UpdateJob` may also be used to directly set a job's requested state to ` JOB_STATE_CANCELLED` or `JOB_STATE_DONE`, irrevocably terminating the job if it has not already reached a terminal state. Corresponds to the JSON property `requestedState` @return [String]
Reserved for future use. This field is set only in responses from the server; it is ignored if it is set in any requests. Corresponds to the JSON property `satisfiesPzs` @return [Boolean]
Reserved for future use. This field is set only in responses from the server; it is ignored if it is set in any requests. Corresponds to the JSON property `satisfiesPzs` @return [Boolean]
This field may be mutated by the Cloud Dataflow service; callers cannot mutate it. Corresponds to the JSON property `stageStates` @return [Array<Google::Apis::DataflowV1b3::ExecutionStageState>]
The timestamp when the job was started (transitioned to JOB_STATE_PENDING). Flexible resource scheduling jobs are started with some delay after job creation, so start_time
is unset before start and is updated when the job is started by the Cloud Dataflow service. For other jobs, start_time
always equals to create_time
and is immutable and set by the Cloud Dataflow service. Corresponds to the JSON property `startTime` @return [String]
Exactly one of step or steps_location
should be specified. The top-level steps that constitute the entire job. Only retrieved with JOB_VIEW_ALL. Corresponds to the JSON property `steps` @return [Array<Google::Apis::DataflowV1b3::Step>]
The Cloud Storage location where the steps are stored. Corresponds to the JSON property `stepsLocation` @return [String]
A set of files the system should be aware of that are used for temporary storage. These temporary files will be removed on job completion. No duplicates are allowed. No file patterns are supported. The supported files are: Google
Cloud Storage: storage.googleapis.com/`bucket`/`object` bucket. storage.googleapis.com/`object` Corresponds to the JSON property `tempFiles` @return [Array<String>]
The map of transform name prefixes of the job to be replaced to the corresponding name prefixes of the new job. Corresponds to the JSON property `transformNameMapping` @return [Hash<String,String>]
The type of Cloud Dataflow job. Corresponds to the JSON property `type` @return [String]
Public Class Methods
# File lib/google/apis/dataflow_v1b3/classes.rb, line 2166 def initialize(**args) update!(**args) end
Public Instance Methods
Update properties of this object
# File lib/google/apis/dataflow_v1b3/classes.rb, line 2171 def update!(**args) @client_request_id = args[:client_request_id] if args.key?(:client_request_id) @create_time = args[:create_time] if args.key?(:create_time) @created_from_snapshot_id = args[:created_from_snapshot_id] if args.key?(:created_from_snapshot_id) @current_state = args[:current_state] if args.key?(:current_state) @current_state_time = args[:current_state_time] if args.key?(:current_state_time) @environment = args[:environment] if args.key?(:environment) @execution_info = args[:execution_info] if args.key?(:execution_info) @id = args[:id] if args.key?(:id) @job_metadata = args[:job_metadata] if args.key?(:job_metadata) @labels = args[:labels] if args.key?(:labels) @location = args[:location] if args.key?(:location) @name = args[:name] if args.key?(:name) @pipeline_description = args[:pipeline_description] if args.key?(:pipeline_description) @project_id = args[:project_id] if args.key?(:project_id) @replace_job_id = args[:replace_job_id] if args.key?(:replace_job_id) @replaced_by_job_id = args[:replaced_by_job_id] if args.key?(:replaced_by_job_id) @requested_state = args[:requested_state] if args.key?(:requested_state) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @stage_states = args[:stage_states] if args.key?(:stage_states) @start_time = args[:start_time] if args.key?(:start_time) @steps = args[:steps] if args.key?(:steps) @steps_location = args[:steps_location] if args.key?(:steps_location) @temp_files = args[:temp_files] if args.key?(:temp_files) @transform_name_mapping = args[:transform_name_mapping] if args.key?(:transform_name_mapping) @type = args[:type] if args.key?(:type) end