Class: Google::Cloud::Functions::V2::ServiceConfig

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/functions/v2/functions.rb

Overview

Describes the Service being deployed. Currently Supported : Cloud Run (fully managed).

Defined Under Namespace

Modules: IngressSettings, SecurityLevel, VpcConnectorEgressSettings Classes: EnvironmentVariablesEntry

Instance Attribute Summary collapse

Instance Attribute Details

#all_traffic_on_latest_revision::Boolean



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#available_cpu::String



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#available_memory::String



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#binary_authorization_policy::String



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#environment_variables::Google::Protobuf::Map{::String => ::String}



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#ingress_settings::Google::Cloud::Functions::V2::ServiceConfig::IngressSettings



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#max_instance_count::Integer



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#max_instance_request_concurrency::Integer



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#min_instance_count::Integer



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#revision::String (readonly)



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#secret_environment_variables::Array<::Google::Cloud::Functions::V2::SecretEnvVar>



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#secret_volumes::Array<::Google::Cloud::Functions::V2::SecretVolume>



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#security_level::Google::Cloud::Functions::V2::ServiceConfig::SecurityLevel



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#service::String (readonly)



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#service_account_email::String



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#timeout_seconds::Integer



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#uri::String (readonly)



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#vpc_connector::String



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end

#vpc_connector_egress_settings::Google::Cloud::Functions::V2::ServiceConfig::VpcConnectorEgressSettings



471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# File 'proto_docs/google/cloud/functions/v2/functions.rb', line 471

class ServiceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class EnvironmentVariablesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Available egress settings.
  #
  # This controls what traffic is diverted through the VPC Access Connector
  # resource. By default PRIVATE_RANGES_ONLY will be used.
  module VpcConnectorEgressSettings
    # Unspecified.
    VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED = 0

    # Use the VPC Access Connector only for private IP space from RFC1918.
    PRIVATE_RANGES_ONLY = 1

    # Force the use of VPC Access Connector for all egress traffic from the
    # function.
    ALL_TRAFFIC = 2
  end

  # Available ingress settings.
  #
  # This controls what traffic can reach the function.
  #
  # If unspecified, ALLOW_ALL will be used.
  module IngressSettings
    # Unspecified.
    INGRESS_SETTINGS_UNSPECIFIED = 0

    # Allow HTTP traffic from public and private sources.
    ALLOW_ALL = 1

    # Allow HTTP traffic from only private VPC sources.
    ALLOW_INTERNAL_ONLY = 2

    # Allow HTTP traffic from private VPC sources and through GCLB.
    ALLOW_INTERNAL_AND_GCLB = 3
  end

  # Available security level settings.
  #
  # This enforces security protocol on function URL.
  #
  # Security level is only configurable for 1st Gen functions, If unspecified,
  # SECURE_OPTIONAL will be used. 2nd Gen functions are SECURE_ALWAYS ONLY.
  module SecurityLevel
    # Unspecified.
    SECURITY_LEVEL_UNSPECIFIED = 0

    # Requests for a URL that match this handler that do not use HTTPS are
    # automatically redirected to the HTTPS URL with the same path. Query
    # parameters are reserved for the redirect.
    SECURE_ALWAYS = 1

    # Both HTTP and HTTPS requests with URLs that match the handler succeed
    # without redirects. The application can examine the request to determine
    # which protocol was used and respond accordingly.
    SECURE_OPTIONAL = 2
  end
end