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

require 'google/api/annotations_pb'
require 'google/api/client_pb'
require 'google/api/field_behavior_pb'
require 'google/api/resource_pb'
require 'google/longrunning/operations_pb'
require 'google/protobuf/timestamp_pb'
require 'google/protobuf'

Google::Protobuf::DescriptorPool.generated_pool.build do
  add_file("google/cloud/tpu/v1/cloud_tpu.proto", :syntax => :proto3) do
    add_message "google.cloud.tpu.v1.SchedulingConfig" do
      optional :preemptible, :bool, 1
      optional :reserved, :bool, 2
    end
    add_message "google.cloud.tpu.v1.NetworkEndpoint" do
      optional :ip_address, :string, 1
      optional :port, :int32, 2
    end
    add_message "google.cloud.tpu.v1.Node" do
      optional :name, :string, 1
      optional :description, :string, 3
      optional :accelerator_type, :string, 5
      optional :ip_address, :string, 8
      optional :port, :string, 14
      optional :state, :enum, 9, "google.cloud.tpu.v1.Node.State"
      optional :health_description, :string, 10
      optional :tensorflow_version, :string, 11
      optional :network, :string, 12
      optional :cidr_block, :string, 13
      optional :service_account, :string, 15
      optional :create_time, :message, 16, "google.protobuf.Timestamp"
      optional :scheduling_config, :message, 17, "google.cloud.tpu.v1.SchedulingConfig"
      repeated :network_endpoints, :message, 21, "google.cloud.tpu.v1.NetworkEndpoint"
      optional :health, :enum, 22, "google.cloud.tpu.v1.Node.Health"
      map :labels, :string, :string, 24
      optional :use_service_networking, :bool, 27
      optional :api_version, :enum, 38, "google.cloud.tpu.v1.Node.ApiVersion"
      repeated :symptoms, :message, 39, "google.cloud.tpu.v1.Symptom"
    end
    add_enum "google.cloud.tpu.v1.Node.State" do
      value :STATE_UNSPECIFIED, 0
      value :CREATING, 1
      value :READY, 2
      value :RESTARTING, 3
      value :REIMAGING, 4
      value :DELETING, 5
      value :REPAIRING, 6
      value :STOPPED, 8
      value :STOPPING, 9
      value :STARTING, 10
      value :PREEMPTED, 11
      value :TERMINATED, 12
      value :HIDING, 13
      value :HIDDEN, 14
      value :UNHIDING, 15
    end
    add_enum "google.cloud.tpu.v1.Node.Health" do
      value :HEALTH_UNSPECIFIED, 0
      value :HEALTHY, 1
      value :DEPRECATED_UNHEALTHY, 2
      value :TIMEOUT, 3
      value :UNHEALTHY_TENSORFLOW, 4
      value :UNHEALTHY_MAINTENANCE, 5
    end
    add_enum "google.cloud.tpu.v1.Node.ApiVersion" do
      value :API_VERSION_UNSPECIFIED, 0
      value :V1_ALPHA1, 1
      value :V1, 2
      value :V2_ALPHA1, 3
    end
    add_message "google.cloud.tpu.v1.ListNodesRequest" do
      optional :parent, :string, 1
      optional :page_size, :int32, 2
      optional :page_token, :string, 3
    end
    add_message "google.cloud.tpu.v1.ListNodesResponse" do
      repeated :nodes, :message, 1, "google.cloud.tpu.v1.Node"
      optional :next_page_token, :string, 2
      repeated :unreachable, :string, 3
    end
    add_message "google.cloud.tpu.v1.GetNodeRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.tpu.v1.CreateNodeRequest" do
      optional :parent, :string, 1
      optional :node_id, :string, 2
      optional :node, :message, 3, "google.cloud.tpu.v1.Node"
    end
    add_message "google.cloud.tpu.v1.DeleteNodeRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.tpu.v1.ReimageNodeRequest" do
      optional :name, :string, 1
      optional :tensorflow_version, :string, 2
    end
    add_message "google.cloud.tpu.v1.StopNodeRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.tpu.v1.StartNodeRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.tpu.v1.TensorFlowVersion" do
      optional :name, :string, 1
      optional :version, :string, 2
    end
    add_message "google.cloud.tpu.v1.GetTensorFlowVersionRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.tpu.v1.ListTensorFlowVersionsRequest" do
      optional :parent, :string, 1
      optional :page_size, :int32, 2
      optional :page_token, :string, 3
      optional :filter, :string, 5
      optional :order_by, :string, 6
    end
    add_message "google.cloud.tpu.v1.ListTensorFlowVersionsResponse" do
      repeated :tensorflow_versions, :message, 1, "google.cloud.tpu.v1.TensorFlowVersion"
      optional :next_page_token, :string, 2
      repeated :unreachable, :string, 3
    end
    add_message "google.cloud.tpu.v1.AcceleratorType" do
      optional :name, :string, 1
      optional :type, :string, 2
    end
    add_message "google.cloud.tpu.v1.GetAcceleratorTypeRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.tpu.v1.ListAcceleratorTypesRequest" do
      optional :parent, :string, 1
      optional :page_size, :int32, 2
      optional :page_token, :string, 3
      optional :filter, :string, 5
      optional :order_by, :string, 6
    end
    add_message "google.cloud.tpu.v1.ListAcceleratorTypesResponse" do
      repeated :accelerator_types, :message, 1, "google.cloud.tpu.v1.AcceleratorType"
      optional :next_page_token, :string, 2
      repeated :unreachable, :string, 3
    end
    add_message "google.cloud.tpu.v1.OperationMetadata" do
      optional :create_time, :message, 1, "google.protobuf.Timestamp"
      optional :end_time, :message, 2, "google.protobuf.Timestamp"
      optional :target, :string, 3
      optional :verb, :string, 4
      optional :status_detail, :string, 5
      optional :cancel_requested, :bool, 6
      optional :api_version, :string, 7
    end
    add_message "google.cloud.tpu.v1.Symptom" do
      optional :create_time, :message, 1, "google.protobuf.Timestamp"
      optional :symptom_type, :enum, 2, "google.cloud.tpu.v1.Symptom.SymptomType"
      optional :details, :string, 3
      optional :worker_id, :string, 4
    end
    add_enum "google.cloud.tpu.v1.Symptom.SymptomType" do
      value :SYMPTOM_TYPE_UNSPECIFIED, 0
      value :LOW_MEMORY, 1
      value :OUT_OF_MEMORY, 2
      value :EXECUTE_TIMED_OUT, 3
      value :MESH_BUILD_FAIL, 4
      value :HBM_OUT_OF_MEMORY, 5
      value :PROJECT_ABUSE, 6
    end
  end
end

module Google
  module Cloud
    module Tpu
      module V1
        SchedulingConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.SchedulingConfig").msgclass
        NetworkEndpoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.NetworkEndpoint").msgclass
        Node = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.Node").msgclass
        Node::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.Node.State").enummodule
        Node::Health = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.Node.Health").enummodule
        Node::ApiVersion = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.Node.ApiVersion").enummodule
        ListNodesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.ListNodesRequest").msgclass
        ListNodesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.ListNodesResponse").msgclass
        GetNodeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.GetNodeRequest").msgclass
        CreateNodeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.CreateNodeRequest").msgclass
        DeleteNodeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.DeleteNodeRequest").msgclass
        ReimageNodeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.ReimageNodeRequest").msgclass
        StopNodeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.StopNodeRequest").msgclass
        StartNodeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.StartNodeRequest").msgclass
        TensorFlowVersion = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.TensorFlowVersion").msgclass
        GetTensorFlowVersionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.GetTensorFlowVersionRequest").msgclass
        ListTensorFlowVersionsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.ListTensorFlowVersionsRequest").msgclass
        ListTensorFlowVersionsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.ListTensorFlowVersionsResponse").msgclass
        AcceleratorType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.AcceleratorType").msgclass
        GetAcceleratorTypeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.GetAcceleratorTypeRequest").msgclass
        ListAcceleratorTypesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.ListAcceleratorTypesRequest").msgclass
        ListAcceleratorTypesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.ListAcceleratorTypesResponse").msgclass
        OperationMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.OperationMetadata").msgclass
        Symptom = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.Symptom").msgclass
        Symptom::SymptomType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.tpu.v1.Symptom.SymptomType").enummodule
      end
    end
  end
end