# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/notebooks/v1/execution.proto

require 'google/protobuf'

require 'google/api/field_behavior_pb'
require 'google/api/resource_pb'
require 'google/protobuf/timestamp_pb'

Google::Protobuf::DescriptorPool.generated_pool.build do
  add_file("google/cloud/notebooks/v1/execution.proto", :syntax => :proto3) do
    add_message "google.cloud.notebooks.v1.ExecutionTemplate" do
      optional :scale_tier, :enum, 1, "google.cloud.notebooks.v1.ExecutionTemplate.ScaleTier"
      optional :master_type, :string, 2
      optional :accelerator_config, :message, 3, "google.cloud.notebooks.v1.ExecutionTemplate.SchedulerAcceleratorConfig"
      map :labels, :string, :string, 4
      optional :input_notebook_file, :string, 5
      optional :container_image_uri, :string, 6
      optional :output_notebook_folder, :string, 7
      optional :params_yaml_file, :string, 8
      optional :parameters, :string, 9
      optional :service_account, :string, 10
      optional :job_type, :enum, 11, "google.cloud.notebooks.v1.ExecutionTemplate.JobType"
      optional :kernel_spec, :string, 14
      optional :tensorboard, :string, 15
      oneof :job_parameters do
        optional :dataproc_parameters, :message, 12, "google.cloud.notebooks.v1.ExecutionTemplate.DataprocParameters"
        optional :vertex_ai_parameters, :message, 13, "google.cloud.notebooks.v1.ExecutionTemplate.VertexAIParameters"
      end
    end
    add_message "google.cloud.notebooks.v1.ExecutionTemplate.SchedulerAcceleratorConfig" do
      optional :type, :enum, 1, "google.cloud.notebooks.v1.ExecutionTemplate.SchedulerAcceleratorType"
      optional :core_count, :int64, 2
    end
    add_message "google.cloud.notebooks.v1.ExecutionTemplate.DataprocParameters" do
      optional :cluster, :string, 1
    end
    add_message "google.cloud.notebooks.v1.ExecutionTemplate.VertexAIParameters" do
      optional :network, :string, 1
      map :env, :string, :string, 2
    end
    add_enum "google.cloud.notebooks.v1.ExecutionTemplate.ScaleTier" do
      value :SCALE_TIER_UNSPECIFIED, 0
      value :BASIC, 1
      value :STANDARD_1, 2
      value :PREMIUM_1, 3
      value :BASIC_GPU, 4
      value :BASIC_TPU, 5
      value :CUSTOM, 6
    end
    add_enum "google.cloud.notebooks.v1.ExecutionTemplate.SchedulerAcceleratorType" do
      value :SCHEDULER_ACCELERATOR_TYPE_UNSPECIFIED, 0
      value :NVIDIA_TESLA_K80, 1
      value :NVIDIA_TESLA_P100, 2
      value :NVIDIA_TESLA_V100, 3
      value :NVIDIA_TESLA_P4, 4
      value :NVIDIA_TESLA_T4, 5
      value :NVIDIA_TESLA_A100, 10
      value :TPU_V2, 6
      value :TPU_V3, 7
    end
    add_enum "google.cloud.notebooks.v1.ExecutionTemplate.JobType" do
      value :JOB_TYPE_UNSPECIFIED, 0
      value :VERTEX_AI, 1
      value :DATAPROC, 2
    end
    add_message "google.cloud.notebooks.v1.Execution" do
      optional :execution_template, :message, 1, "google.cloud.notebooks.v1.ExecutionTemplate"
      optional :name, :string, 2
      optional :display_name, :string, 3
      optional :description, :string, 4
      optional :create_time, :message, 5, "google.protobuf.Timestamp"
      optional :update_time, :message, 6, "google.protobuf.Timestamp"
      optional :state, :enum, 7, "google.cloud.notebooks.v1.Execution.State"
      optional :output_notebook_file, :string, 8
      optional :job_uri, :string, 9
    end
    add_enum "google.cloud.notebooks.v1.Execution.State" do
      value :STATE_UNSPECIFIED, 0
      value :QUEUED, 1
      value :PREPARING, 2
      value :RUNNING, 3
      value :SUCCEEDED, 4
      value :FAILED, 5
      value :CANCELLING, 6
      value :CANCELLED, 7
      value :EXPIRED, 9
      value :INITIALIZING, 10
    end
  end
end

module Google
  module Cloud
    module Notebooks
      module V1
        ExecutionTemplate = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.notebooks.v1.ExecutionTemplate").msgclass
        ExecutionTemplate::SchedulerAcceleratorConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.notebooks.v1.ExecutionTemplate.SchedulerAcceleratorConfig").msgclass
        ExecutionTemplate::DataprocParameters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.notebooks.v1.ExecutionTemplate.DataprocParameters").msgclass
        ExecutionTemplate::VertexAIParameters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.notebooks.v1.ExecutionTemplate.VertexAIParameters").msgclass
        ExecutionTemplate::ScaleTier = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.notebooks.v1.ExecutionTemplate.ScaleTier").enummodule
        ExecutionTemplate::SchedulerAcceleratorType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.notebooks.v1.ExecutionTemplate.SchedulerAcceleratorType").enummodule
        ExecutionTemplate::JobType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.notebooks.v1.ExecutionTemplate.JobType").enummodule
        Execution = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.notebooks.v1.Execution").msgclass
        Execution::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.notebooks.v1.Execution.State").enummodule
      end
    end
  end
end