Class: Google::Apis::ComputeBeta::TargetGrpcProxy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::TargetGrpcProxy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb
Overview
Represents a Target gRPC Proxy resource. A target gRPC proxy is a component of load balancers intended for load balancing gRPC traffic. Only global forwarding rules with load balancing scheme INTERNAL_SELF_MANAGED can reference a target gRPC proxy. The target gRPC Proxy references a URL map that specifies how traffic is routed to gRPC backend services.
Instance Attribute Summary collapse
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
An optional description of this resource.
-
#fingerprint ⇒ String
Fingerprint of this resource.
-
#id ⇒ Fixnum
Output only.
-
#kind ⇒ String
Output only.
-
#name ⇒ String
Name of the resource.
-
#self_link ⇒ String
Output only.
-
#self_link_with_id ⇒ String
Output only.
-
#url_map ⇒ String
URL to the UrlMap resource that defines the mapping from URL to the BackendService.
-
#validate_for_proxyless ⇒ Boolean
(also: #validate_for_proxyless?)
If true, indicates that the BackendServices referenced by the urlMap may be accessed by gRPC applications without using a sidecar proxy.
Instance Method Summary collapse
-
#initialize(**args) ⇒ TargetGrpcProxy
constructor
A new instance of TargetGrpcProxy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ TargetGrpcProxy
Returns a new instance of TargetGrpcProxy.
68417 68418 68419 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68417 def initialize(**args) update!(**args) end |
Instance Attribute Details
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
68341 68342 68343 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68341 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
68347 68348 68349 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68347 def description @description end |
#fingerprint ⇒ String
Fingerprint of this resource. A hash of the contents stored in this object.
This field is used in optimistic locking. This field will be ignored when
inserting a TargetGrpcProxy. An up-to-date fingerprint must
be provided in order to patch/update the TargetGrpcProxy; otherwise, the
request will fail with error 412 conditionNotMet. To see the
latest fingerprint, make a get() request to retrieve the
TargetGrpcProxy.
Corresponds to the JSON property fingerprint
NOTE: Values are automatically base64 encoded/decoded in the client library.
68359 68360 68361 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68359 def fingerprint @fingerprint end |
#id ⇒ Fixnum
Output only. [Output Only] The unique identifier for the resource type. The
server
generates this identifier.
Corresponds to the JSON property id
68366 68367 68368 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68366 def id @id end |
#kind ⇒ String
Output only. [Output Only] Type of the resource. Alwayscompute#targetGrpcProxy
for target grpc proxies.
Corresponds to the JSON property kind
68372 68373 68374 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68372 def kind @kind end |
#name ⇒ String
Name of the resource. Provided by the client when the resource is created.
The name must be 1-63 characters long, and comply withRFC1035.
Specifically, the name must be 1-63 characters long and match the regular
expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first
character must be a lowercase letter, and all following characters must
be a dash, lowercase letter, or digit, except the last character, which
cannot be a dash.
Corresponds to the JSON property name
68383 68384 68385 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68383 def name @name end |
#self_link ⇒ String
Output only. [Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
68388 68389 68390 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68388 def self_link @self_link end |
#self_link_with_id ⇒ String
Output only. [Output Only] Server-defined URL with id for the resource.
Corresponds to the JSON property selfLinkWithId
68393 68394 68395 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68393 def self_link_with_id @self_link_with_id end |
#url_map ⇒ String
URL to the UrlMap resource that defines the mapping from URL to the
BackendService. The protocol field in the BackendService must be set to
GRPC.
Corresponds to the JSON property urlMap
68400 68401 68402 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68400 def url_map @url_map end |
#validate_for_proxyless ⇒ Boolean Also known as: validate_for_proxyless?
If true, indicates that the BackendServices referenced by the urlMap may be
accessed by gRPC applications without using a sidecar proxy. This will
enable configuration checks on urlMap and its referenced BackendServices to
not allow unsupported features. A gRPC application must use
"xds:///" scheme in the target URI of the service it is
connecting to.
If false, indicates that the BackendServices referenced by the urlMap will
be accessed by gRPC applications via a sidecar proxy. In this case, a gRPC
application must not use "xds:///" scheme in the target URI of
the service it is connecting to
Corresponds to the JSON property validateForProxyless
68414 68415 68416 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68414 def validate_for_proxyless @validate_for_proxyless end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
68422 68423 68424 68425 68426 68427 68428 68429 68430 68431 68432 68433 |
# File 'lib/google/apis/compute_beta/classes.rb', line 68422 def update!(**args) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @fingerprint = args[:fingerprint] if args.key?(:fingerprint) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @self_link = args[:self_link] if args.key?(:self_link) @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id) @url_map = args[:url_map] if args.key?(:url_map) @validate_for_proxyless = args[:validate_for_proxyless] if args.key?(:validate_for_proxyless) end |