# frozen_string_literal: true # Copyright 2022 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Auto-generated by gapic-generator-ruby. DO NOT EDIT! module Google module Cloud module AIPlatform module V1 # An instance of a machine learning PipelineJob. # @!attribute [r] name # @return [::String] # Output only. The resource name of the PipelineJob. # @!attribute [rw] display_name # @return [::String] # The display name of the Pipeline. # The name can be up to 128 characters long and can be consist of any UTF-8 # characters. # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. Pipeline creation time. # @!attribute [r] start_time # @return [::Google::Protobuf::Timestamp] # Output only. Pipeline start time. # @!attribute [r] end_time # @return [::Google::Protobuf::Timestamp] # Output only. Pipeline end time. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. Timestamp when this PipelineJob was most recently updated. # @!attribute [rw] pipeline_spec # @return [::Google::Protobuf::Struct] # The spec of the pipeline. # @!attribute [r] state # @return [::Google::Cloud::AIPlatform::V1::PipelineState] # Output only. The detailed state of the job. # @!attribute [r] job_detail # @return [::Google::Cloud::AIPlatform::V1::PipelineJobDetail] # Output only. The details of pipeline run. Not available in the list view. # @!attribute [r] error # @return [::Google::Rpc::Status] # Output only. The error that occurred during pipeline execution. # Only populated when the pipeline's state is FAILED or CANCELLED. # @!attribute [rw] labels # @return [::Google::Protobuf::Map{::String => ::String}] # The labels with user-defined metadata to organize PipelineJob. # # Label keys and values can be no longer than 64 characters # (Unicode codepoints), can only contain lowercase letters, numeric # characters, underscores and dashes. International characters are allowed. # # See https://goo.gl/xmQnxf for more information and examples of labels. # @!attribute [rw] runtime_config # @return [::Google::Cloud::AIPlatform::V1::PipelineJob::RuntimeConfig] # Runtime config of the pipeline. # @!attribute [rw] encryption_spec # @return [::Google::Cloud::AIPlatform::V1::EncryptionSpec] # Customer-managed encryption key spec for a pipelineJob. If set, this # PipelineJob and all of its sub-resources will be secured by this key. # @!attribute [rw] service_account # @return [::String] # The service account that the pipeline workload runs as. # If not specified, the Compute Engine default service account in the project # will be used. # See # https://cloud.google.com/compute/docs/access/service-accounts#default_service_account # # Users starting the pipeline must have the `iam.serviceAccounts.actAs` # permission on this service account. # @!attribute [rw] network # @return [::String] # The full name of the Compute Engine # [network](/compute/docs/networks-and-firewalls#networks) to which the # Pipeline Job's workload should be peered. For example, # `projects/12345/global/networks/myVPC`. # [Format](/compute/docs/reference/rest/v1/networks/insert) # is of the form `projects/{project}/global/networks/{network}`. # Where \\{project} is a project number, as in `12345`, and \\{network} is a # network name. # # Private services access must already be configured for the network. # Pipeline job will apply the network configuration to the GCP resources # being launched, if applied, such as Vertex AI # Training or Dataflow job. If left unspecified, the workload is not peered # with any network. # @!attribute [rw] template_uri # @return [::String] # A template uri from where the {::Google::Cloud::AIPlatform::V1::PipelineJob#pipeline_spec PipelineJob.pipeline_spec}, if empty, will # be downloaded. # @!attribute [r] template_metadata # @return [::Google::Cloud::AIPlatform::V1::PipelineTemplateMetadata] # Output only. Pipeline template metadata. Will fill up fields if # {::Google::Cloud::AIPlatform::V1::PipelineJob#template_uri PipelineJob.template_uri} is from supported template registry. class PipelineJob include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # The runtime config of a PipelineJob. # @!attribute [rw] parameters # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::AIPlatform::V1::Value}] # Deprecated. Use {::Google::Cloud::AIPlatform::V1::PipelineJob::RuntimeConfig#parameter_values RuntimeConfig.parameter_values} instead. The runtime # parameters of the PipelineJob. The parameters will be passed into # {::Google::Cloud::AIPlatform::V1::PipelineJob#pipeline_spec PipelineJob.pipeline_spec} to replace the placeholders at runtime. # This field is used by pipelines built using # `PipelineJob.pipeline_spec.schema_version` 2.0.0 or lower, such as # pipelines built using Kubeflow Pipelines SDK 1.8 or lower. # @!attribute [rw] gcs_output_directory # @return [::String] # Required. A path in a Cloud Storage bucket, which will be treated as the root # output directory of the pipeline. It is used by the system to # generate the paths of output artifacts. The artifact paths are generated # with a sub-path pattern `{job_id}/{task_id}/{output_key}` under the # specified output directory. The service account specified in this # pipeline must have the `storage.objects.get` and `storage.objects.create` # permissions for this bucket. # @!attribute [rw] parameter_values # @return [::Google::Protobuf::Map{::String => ::Google::Protobuf::Value}] # The runtime parameters of the PipelineJob. The parameters will be # passed into {::Google::Cloud::AIPlatform::V1::PipelineJob#pipeline_spec PipelineJob.pipeline_spec} to replace the placeholders # at runtime. This field is used by pipelines built using # `PipelineJob.pipeline_spec.schema_version` 2.1.0, such as pipelines built # using Kubeflow Pipelines SDK 1.9 or higher and the v2 DSL. # @!attribute [rw] failure_policy # @return [::Google::Cloud::AIPlatform::V1::PipelineFailurePolicy] # Represents the failure policy of a pipeline. Currently, the default of a # pipeline is that the pipeline will continue to run until no more tasks # can be executed, also known as PIPELINE_FAILURE_POLICY_FAIL_SLOW. # However, if a pipeline is set to PIPELINE_FAILURE_POLICY_FAIL_FAST, it # will stop scheduling any new tasks when a task has failed. Any scheduled # tasks will continue to completion. class RuntimeConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::Google::Cloud::AIPlatform::V1::Value] class ParametersEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::Google::Protobuf::Value] class ParameterValuesEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class LabelsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # Pipeline template metadata if {::Google::Cloud::AIPlatform::V1::PipelineJob#template_uri PipelineJob.template_uri} is from supported # template registry. Currently, the only supported registry is Artifact # Registry. # @!attribute [rw] version # @return [::String] # The version_name in artifact registry. # # Will always be presented in output if the {::Google::Cloud::AIPlatform::V1::PipelineJob#template_uri PipelineJob.template_uri} is # from supported template registry. # # Format is "sha256:abcdef123456...". class PipelineTemplateMetadata include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The runtime detail of PipelineJob. # @!attribute [r] pipeline_context # @return [::Google::Cloud::AIPlatform::V1::Context] # Output only. The context of the pipeline. # @!attribute [r] pipeline_run_context # @return [::Google::Cloud::AIPlatform::V1::Context] # Output only. The context of the current pipeline run. # @!attribute [r] task_details # @return [::Array<::Google::Cloud::AIPlatform::V1::PipelineTaskDetail>] # Output only. The runtime details of the tasks under the pipeline. class PipelineJobDetail include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The runtime detail of a task execution. # @!attribute [r] task_id # @return [::Integer] # Output only. The system generated ID of the task. # @!attribute [r] parent_task_id # @return [::Integer] # Output only. The id of the parent task if the task is within a component scope. # Empty if the task is at the root level. # @!attribute [r] task_name # @return [::String] # Output only. The user specified name of the task that is defined in # [PipelineJob.spec][]. # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. Task create time. # @!attribute [r] start_time # @return [::Google::Protobuf::Timestamp] # Output only. Task start time. # @!attribute [r] end_time # @return [::Google::Protobuf::Timestamp] # Output only. Task end time. # @!attribute [r] executor_detail # @return [::Google::Cloud::AIPlatform::V1::PipelineTaskExecutorDetail] # Output only. The detailed execution info. # @!attribute [r] state # @return [::Google::Cloud::AIPlatform::V1::PipelineTaskDetail::State] # Output only. State of the task. # @!attribute [r] execution # @return [::Google::Cloud::AIPlatform::V1::Execution] # Output only. The execution metadata of the task. # @!attribute [r] error # @return [::Google::Rpc::Status] # Output only. The error that occurred during task execution. # Only populated when the task's state is FAILED or CANCELLED. # @!attribute [r] pipeline_task_status # @return [::Array<::Google::Cloud::AIPlatform::V1::PipelineTaskDetail::PipelineTaskStatus>] # Output only. A list of task status. This field keeps a record of task status evolving # over time. # @!attribute [r] inputs # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::AIPlatform::V1::PipelineTaskDetail::ArtifactList}] # Output only. The runtime input artifacts of the task. # @!attribute [r] outputs # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::AIPlatform::V1::PipelineTaskDetail::ArtifactList}] # Output only. The runtime output artifacts of the task. class PipelineTaskDetail include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # A single record of the task status. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. Update time of this status. # @!attribute [r] state # @return [::Google::Cloud::AIPlatform::V1::PipelineTaskDetail::State] # Output only. The state of the task. # @!attribute [r] error # @return [::Google::Rpc::Status] # Output only. The error that occurred during the state. May be set when the state is # any of the non-final state (PENDING/RUNNING/CANCELLING) or FAILED state. # If the state is FAILED, the error here is final and not going to be # retried. # If the state is a non-final state, the error indicates a system-error # being retried. class PipelineTaskStatus include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # A list of artifact metadata. # @!attribute [r] artifacts # @return [::Array<::Google::Cloud::AIPlatform::V1::Artifact>] # Output only. A list of artifact metadata. class ArtifactList include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::Google::Cloud::AIPlatform::V1::PipelineTaskDetail::ArtifactList] class InputsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::Google::Cloud::AIPlatform::V1::PipelineTaskDetail::ArtifactList] class OutputsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Specifies state of TaskExecution module State # Unspecified. STATE_UNSPECIFIED = 0 # Specifies pending state for the task. PENDING = 1 # Specifies task is being executed. RUNNING = 2 # Specifies task completed successfully. SUCCEEDED = 3 # Specifies Task cancel is in pending state. CANCEL_PENDING = 4 # Specifies task is being cancelled. CANCELLING = 5 # Specifies task was cancelled. CANCELLED = 6 # Specifies task failed. FAILED = 7 # Specifies task was skipped due to cache hit. SKIPPED = 8 # Specifies that the task was not triggered because the task's trigger # policy is not satisfied. The trigger policy is specified in the # `condition` field of {::Google::Cloud::AIPlatform::V1::PipelineJob#pipeline_spec PipelineJob.pipeline_spec}. NOT_TRIGGERED = 9 end end # The runtime detail of a pipeline executor. # @!attribute [r] container_detail # @return [::Google::Cloud::AIPlatform::V1::PipelineTaskExecutorDetail::ContainerDetail] # Output only. The detailed info for a container executor. # @!attribute [r] custom_job_detail # @return [::Google::Cloud::AIPlatform::V1::PipelineTaskExecutorDetail::CustomJobDetail] # Output only. The detailed info for a custom job executor. class PipelineTaskExecutorDetail include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # The detail of a container execution. It contains the job names of the # lifecycle of a container execution. # @!attribute [r] main_job # @return [::String] # Output only. The name of the {::Google::Cloud::AIPlatform::V1::CustomJob CustomJob} for the main container execution. # @!attribute [r] pre_caching_check_job # @return [::String] # Output only. The name of the {::Google::Cloud::AIPlatform::V1::CustomJob CustomJob} for the pre-caching-check container # execution. This job will be available if the # {::Google::Cloud::AIPlatform::V1::PipelineJob#pipeline_spec PipelineJob.pipeline_spec} specifies the `pre_caching_check` hook in # the lifecycle events. class ContainerDetail include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The detailed info for a custom job executor. # @!attribute [r] job # @return [::String] # Output only. The name of the {::Google::Cloud::AIPlatform::V1::CustomJob CustomJob}. class CustomJobDetail include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end end end end end