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

require 'google/api/annotations_pb'
require 'google/api/client_pb'
require 'google/api/field_behavior_pb'
require 'google/api/resource_pb'
require 'google/iam/v1/iam_policy_pb'
require 'google/iam/v1/policy_pb'
require 'google/longrunning/operations_pb'
require 'google/protobuf/duration_pb'
require 'google/protobuf/field_mask_pb'
require 'google/protobuf/timestamp_pb'
require 'google/protobuf'

Google::Protobuf::DescriptorPool.generated_pool.build do
  add_file("google/cloud/functions/v1/functions.proto", :syntax => :proto3) do
    add_message "google.cloud.functions.v1.CloudFunction" do
      optional :name, :string, 1
      optional :description, :string, 2
      optional :status, :enum, 7, "google.cloud.functions.v1.CloudFunctionStatus"
      optional :entry_point, :string, 8
      optional :runtime, :string, 19
      optional :timeout, :message, 9, "google.protobuf.Duration"
      optional :available_memory_mb, :int32, 10
      optional :service_account_email, :string, 11
      optional :update_time, :message, 12, "google.protobuf.Timestamp"
      optional :version_id, :int64, 14
      map :labels, :string, :string, 15
      map :environment_variables, :string, :string, 17
      map :build_environment_variables, :string, :string, 28
      optional :network, :string, 18
      optional :max_instances, :int32, 20
      optional :min_instances, :int32, 32
      optional :vpc_connector, :string, 22
      optional :vpc_connector_egress_settings, :enum, 23, "google.cloud.functions.v1.CloudFunction.VpcConnectorEgressSettings"
      optional :ingress_settings, :enum, 24, "google.cloud.functions.v1.CloudFunction.IngressSettings"
      optional :kms_key_name, :string, 25
      optional :build_worker_pool, :string, 26
      optional :build_id, :string, 27
      optional :build_name, :string, 33
      repeated :secret_environment_variables, :message, 29, "google.cloud.functions.v1.SecretEnvVar"
      repeated :secret_volumes, :message, 30, "google.cloud.functions.v1.SecretVolume"
      optional :source_token, :string, 31
      optional :docker_repository, :string, 34
      oneof :source_code do
        optional :source_archive_url, :string, 3
        optional :source_repository, :message, 4, "google.cloud.functions.v1.SourceRepository"
        optional :source_upload_url, :string, 16
      end
      oneof :trigger do
        optional :https_trigger, :message, 5, "google.cloud.functions.v1.HttpsTrigger"
        optional :event_trigger, :message, 6, "google.cloud.functions.v1.EventTrigger"
      end
    end
    add_enum "google.cloud.functions.v1.CloudFunction.VpcConnectorEgressSettings" do
      value :VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED, 0
      value :PRIVATE_RANGES_ONLY, 1
      value :ALL_TRAFFIC, 2
    end
    add_enum "google.cloud.functions.v1.CloudFunction.IngressSettings" do
      value :INGRESS_SETTINGS_UNSPECIFIED, 0
      value :ALLOW_ALL, 1
      value :ALLOW_INTERNAL_ONLY, 2
      value :ALLOW_INTERNAL_AND_GCLB, 3
    end
    add_message "google.cloud.functions.v1.SourceRepository" do
      optional :url, :string, 1
      optional :deployed_url, :string, 2
    end
    add_message "google.cloud.functions.v1.HttpsTrigger" do
      optional :url, :string, 1
      optional :security_level, :enum, 2, "google.cloud.functions.v1.HttpsTrigger.SecurityLevel"
    end
    add_enum "google.cloud.functions.v1.HttpsTrigger.SecurityLevel" do
      value :SECURITY_LEVEL_UNSPECIFIED, 0
      value :SECURE_ALWAYS, 1
      value :SECURE_OPTIONAL, 2
    end
    add_message "google.cloud.functions.v1.EventTrigger" do
      optional :event_type, :string, 1
      optional :resource, :string, 2
      optional :service, :string, 3
      optional :failure_policy, :message, 5, "google.cloud.functions.v1.FailurePolicy"
    end
    add_message "google.cloud.functions.v1.FailurePolicy" do
      oneof :action do
        optional :retry, :message, 1, "google.cloud.functions.v1.FailurePolicy.Retry"
      end
    end
    add_message "google.cloud.functions.v1.FailurePolicy.Retry" do
    end
    add_message "google.cloud.functions.v1.SecretEnvVar" do
      optional :key, :string, 1
      optional :project_id, :string, 2
      optional :secret, :string, 3
      optional :version, :string, 4
    end
    add_message "google.cloud.functions.v1.SecretVolume" do
      optional :mount_path, :string, 1
      optional :project_id, :string, 2
      optional :secret, :string, 3
      repeated :versions, :message, 4, "google.cloud.functions.v1.SecretVolume.SecretVersion"
    end
    add_message "google.cloud.functions.v1.SecretVolume.SecretVersion" do
      optional :version, :string, 1
      optional :path, :string, 2
    end
    add_message "google.cloud.functions.v1.CreateFunctionRequest" do
      optional :location, :string, 1
      optional :function, :message, 2, "google.cloud.functions.v1.CloudFunction"
    end
    add_message "google.cloud.functions.v1.UpdateFunctionRequest" do
      optional :function, :message, 1, "google.cloud.functions.v1.CloudFunction"
      optional :update_mask, :message, 2, "google.protobuf.FieldMask"
    end
    add_message "google.cloud.functions.v1.GetFunctionRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.functions.v1.ListFunctionsRequest" do
      optional :parent, :string, 1
      optional :page_size, :int32, 2
      optional :page_token, :string, 3
    end
    add_message "google.cloud.functions.v1.ListFunctionsResponse" do
      repeated :functions, :message, 1, "google.cloud.functions.v1.CloudFunction"
      optional :next_page_token, :string, 2
      repeated :unreachable, :string, 3
    end
    add_message "google.cloud.functions.v1.DeleteFunctionRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.functions.v1.CallFunctionRequest" do
      optional :name, :string, 1
      optional :data, :string, 2
    end
    add_message "google.cloud.functions.v1.CallFunctionResponse" do
      optional :execution_id, :string, 1
      optional :result, :string, 2
      optional :error, :string, 3
    end
    add_message "google.cloud.functions.v1.GenerateUploadUrlRequest" do
      optional :parent, :string, 1
    end
    add_message "google.cloud.functions.v1.GenerateUploadUrlResponse" do
      optional :upload_url, :string, 1
    end
    add_message "google.cloud.functions.v1.GenerateDownloadUrlRequest" do
      optional :name, :string, 1
      optional :version_id, :uint64, 2
    end
    add_message "google.cloud.functions.v1.GenerateDownloadUrlResponse" do
      optional :download_url, :string, 1
    end
    add_enum "google.cloud.functions.v1.CloudFunctionStatus" do
      value :CLOUD_FUNCTION_STATUS_UNSPECIFIED, 0
      value :ACTIVE, 1
      value :OFFLINE, 2
      value :DEPLOY_IN_PROGRESS, 3
      value :DELETE_IN_PROGRESS, 4
      value :UNKNOWN, 5
    end
  end
end

module Google
  module Cloud
    module Functions
      module V1
        CloudFunction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.CloudFunction").msgclass
        CloudFunction::VpcConnectorEgressSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.CloudFunction.VpcConnectorEgressSettings").enummodule
        CloudFunction::IngressSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.CloudFunction.IngressSettings").enummodule
        SourceRepository = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.SourceRepository").msgclass
        HttpsTrigger = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.HttpsTrigger").msgclass
        HttpsTrigger::SecurityLevel = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.HttpsTrigger.SecurityLevel").enummodule
        EventTrigger = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.EventTrigger").msgclass
        FailurePolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.FailurePolicy").msgclass
        FailurePolicy::Retry = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.FailurePolicy.Retry").msgclass
        SecretEnvVar = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.SecretEnvVar").msgclass
        SecretVolume = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.SecretVolume").msgclass
        SecretVolume::SecretVersion = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.SecretVolume.SecretVersion").msgclass
        CreateFunctionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.CreateFunctionRequest").msgclass
        UpdateFunctionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.UpdateFunctionRequest").msgclass
        GetFunctionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.GetFunctionRequest").msgclass
        ListFunctionsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.ListFunctionsRequest").msgclass
        ListFunctionsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.ListFunctionsResponse").msgclass
        DeleteFunctionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.DeleteFunctionRequest").msgclass
        CallFunctionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.CallFunctionRequest").msgclass
        CallFunctionResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.CallFunctionResponse").msgclass
        GenerateUploadUrlRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.GenerateUploadUrlRequest").msgclass
        GenerateUploadUrlResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.GenerateUploadUrlResponse").msgclass
        GenerateDownloadUrlRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.GenerateDownloadUrlRequest").msgclass
        GenerateDownloadUrlResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.GenerateDownloadUrlResponse").msgclass
        CloudFunctionStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.functions.v1.CloudFunctionStatus").enummodule
      end
    end
  end
end