google-apis-networkservices_v1beta1 0.44.0 → 0.45.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/google/apis/networkservices_v1beta1/classes.rb +760 -419
- data/lib/google/apis/networkservices_v1beta1/gem_version.rb +3 -3
- data/lib/google/apis/networkservices_v1beta1/representations.rb +228 -90
- data/lib/google/apis/networkservices_v1beta1/service.rb +735 -161
- metadata +4 -4
@@ -22,165 +22,108 @@ module Google
|
|
22
22
|
module Apis
|
23
23
|
module NetworkservicesV1beta1
|
24
24
|
|
25
|
-
#
|
26
|
-
#
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
# exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `,
|
34
|
-
# ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com",
|
35
|
-
# "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE"
|
36
|
-
# , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice,
|
37
|
-
# this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also
|
38
|
-
# exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com`
|
39
|
-
# from DATA_WRITE logging.
|
40
|
-
class AuditConfig
|
41
|
-
include Google::Apis::Core::Hashable
|
42
|
-
|
43
|
-
# The configuration for logging of each type of permission.
|
44
|
-
# Corresponds to the JSON property `auditLogConfigs`
|
45
|
-
# @return [Array<Google::Apis::NetworkservicesV1beta1::AuditLogConfig>]
|
46
|
-
attr_accessor :audit_log_configs
|
47
|
-
|
48
|
-
# Specifies a service that will be enabled for audit logging. For example, `
|
49
|
-
# storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special
|
50
|
-
# value that covers all services.
|
51
|
-
# Corresponds to the JSON property `service`
|
25
|
+
# `AuthzExtension` is a resource that allows traffic forwarding to a callout
|
26
|
+
# backend service to make an authorization decision.
|
27
|
+
class AuthzExtension
|
28
|
+
include Google::Apis::Core::Hashable
|
29
|
+
|
30
|
+
# Required. The `:authority` header in the gRPC request sent from Envoy to the
|
31
|
+
# extension service.
|
32
|
+
# Corresponds to the JSON property `authority`
|
52
33
|
# @return [String]
|
53
|
-
attr_accessor :
|
34
|
+
attr_accessor :authority
|
54
35
|
|
55
|
-
|
56
|
-
|
57
|
-
|
36
|
+
# Output only. The timestamp when the resource was created.
|
37
|
+
# Corresponds to the JSON property `createTime`
|
38
|
+
# @return [String]
|
39
|
+
attr_accessor :create_time
|
58
40
|
|
59
|
-
#
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
end
|
64
|
-
end
|
41
|
+
# Optional. A human-readable description of the resource.
|
42
|
+
# Corresponds to the JSON property `description`
|
43
|
+
# @return [String]
|
44
|
+
attr_accessor :description
|
65
45
|
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
46
|
+
# Optional. Determines how the proxy behaves if the call to the extension fails
|
47
|
+
# or times out. When set to `TRUE`, request or response processing continues
|
48
|
+
# without error. Any subsequent extensions in the extension chain are also
|
49
|
+
# executed. When set to `FALSE` or the default setting of `FALSE` is used, one
|
50
|
+
# of the following happens: * If response headers have not been delivered to the
|
51
|
+
# downstream client, a generic 500 error is returned to the client. The error
|
52
|
+
# response can be tailored by configuring a custom error response in the load
|
53
|
+
# balancer. * If response headers have been delivered, then the HTTP stream to
|
54
|
+
# the downstream client is reset.
|
55
|
+
# Corresponds to the JSON property `failOpen`
|
56
|
+
# @return [Boolean]
|
57
|
+
attr_accessor :fail_open
|
58
|
+
alias_method :fail_open?, :fail_open
|
73
59
|
|
74
|
-
#
|
75
|
-
#
|
76
|
-
#
|
77
|
-
#
|
78
|
-
attr_accessor :exempted_members
|
79
|
-
|
80
|
-
# The log type that this config enables.
|
81
|
-
# Corresponds to the JSON property `logType`
|
82
|
-
# @return [String]
|
83
|
-
attr_accessor :log_type
|
84
|
-
|
85
|
-
def initialize(**args)
|
86
|
-
update!(**args)
|
87
|
-
end
|
88
|
-
|
89
|
-
# Update properties of this object
|
90
|
-
def update!(**args)
|
91
|
-
@exempted_members = args[:exempted_members] if args.key?(:exempted_members)
|
92
|
-
@log_type = args[:log_type] if args.key?(:log_type)
|
93
|
-
end
|
94
|
-
end
|
95
|
-
|
96
|
-
# Associates `members`, or principals, with a `role`.
|
97
|
-
class Binding
|
98
|
-
include Google::Apis::Core::Hashable
|
99
|
-
|
100
|
-
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
101
|
-
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
102
|
-
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
103
|
-
# "Summary size limit" description: "Determines if a summary is less than 100
|
104
|
-
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
105
|
-
# Requestor is owner" description: "Determines if requestor is the document
|
106
|
-
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
107
|
-
# Logic): title: "Public documents" description: "Determine whether the document
|
108
|
-
# should be publicly visible" expression: "document.type != 'private' &&
|
109
|
-
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
110
|
-
# string" description: "Create a notification string with a timestamp."
|
111
|
-
# expression: "'New message received at ' + string(document.create_time)" The
|
112
|
-
# exact variables and functions that may be referenced within an expression are
|
113
|
-
# determined by the service that evaluates it. See the service documentation for
|
114
|
-
# additional information.
|
115
|
-
# Corresponds to the JSON property `condition`
|
116
|
-
# @return [Google::Apis::NetworkservicesV1beta1::Expr]
|
117
|
-
attr_accessor :condition
|
118
|
-
|
119
|
-
# Specifies the principals requesting access for a Google Cloud resource. `
|
120
|
-
# members` can have the following values: * `allUsers`: A special identifier
|
121
|
-
# that represents anyone who is on the internet; with or without a Google
|
122
|
-
# account. * `allAuthenticatedUsers`: A special identifier that represents
|
123
|
-
# anyone who is authenticated with a Google account or a service account. Does
|
124
|
-
# not include identities that come from external identity providers (IdPs)
|
125
|
-
# through identity federation. * `user:`emailid``: An email address that
|
126
|
-
# represents a specific Google account. For example, `alice@example.com` . * `
|
127
|
-
# serviceAccount:`emailid``: An email address that represents a Google service
|
128
|
-
# account. For example, `my-other-app@appspot.gserviceaccount.com`. * `
|
129
|
-
# serviceAccount:`projectid`.svc.id.goog[`namespace`/`kubernetes-sa`]`: An
|
130
|
-
# identifier for a [Kubernetes service account](https://cloud.google.com/
|
131
|
-
# kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-
|
132
|
-
# project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:`emailid``: An
|
133
|
-
# email address that represents a Google group. For example, `admins@example.com`
|
134
|
-
# . * `domain:`domain``: The G Suite domain (primary) that represents all the
|
135
|
-
# users of that domain. For example, `google.com` or `example.com`. * `principal:
|
136
|
-
# //iam.googleapis.com/locations/global/workforcePools/`pool_id`/subject/`
|
137
|
-
# subject_attribute_value``: A single identity in a workforce identity pool. * `
|
138
|
-
# principalSet://iam.googleapis.com/locations/global/workforcePools/`pool_id`/
|
139
|
-
# group/`group_id``: All workforce identities in a group. * `principalSet://iam.
|
140
|
-
# googleapis.com/locations/global/workforcePools/`pool_id`/attribute.`
|
141
|
-
# attribute_name`/`attribute_value``: All workforce identities with a specific
|
142
|
-
# attribute value. * `principalSet://iam.googleapis.com/locations/global/
|
143
|
-
# workforcePools/`pool_id`/*`: All identities in a workforce identity pool. * `
|
144
|
-
# principal://iam.googleapis.com/projects/`project_number`/locations/global/
|
145
|
-
# workloadIdentityPools/`pool_id`/subject/`subject_attribute_value``: A single
|
146
|
-
# identity in a workload identity pool. * `principalSet://iam.googleapis.com/
|
147
|
-
# projects/`project_number`/locations/global/workloadIdentityPools/`pool_id`/
|
148
|
-
# group/`group_id``: A workload identity pool group. * `principalSet://iam.
|
149
|
-
# googleapis.com/projects/`project_number`/locations/global/
|
150
|
-
# workloadIdentityPools/`pool_id`/attribute.`attribute_name`/`attribute_value``:
|
151
|
-
# All identities in a workload identity pool with a certain attribute. * `
|
152
|
-
# principalSet://iam.googleapis.com/projects/`project_number`/locations/global/
|
153
|
-
# workloadIdentityPools/`pool_id`/*`: All identities in a workload identity pool.
|
154
|
-
# * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
|
155
|
-
# identifier) representing a user that has been recently deleted. For example, `
|
156
|
-
# alice@example.com?uid=123456789012345678901`. If the user is recovered, this
|
157
|
-
# value reverts to `user:`emailid`` and the recovered user retains the role in
|
158
|
-
# the binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email
|
159
|
-
# address (plus unique identifier) representing a service account that has been
|
160
|
-
# recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=
|
161
|
-
# 123456789012345678901`. If the service account is undeleted, this value
|
162
|
-
# reverts to `serviceAccount:`emailid`` and the undeleted service account
|
163
|
-
# retains the role in the binding. * `deleted:group:`emailid`?uid=`uniqueid``:
|
164
|
-
# An email address (plus unique identifier) representing a Google group that has
|
165
|
-
# been recently deleted. For example, `admins@example.com?uid=
|
166
|
-
# 123456789012345678901`. If the group is recovered, this value reverts to `
|
167
|
-
# group:`emailid`` and the recovered group retains the role in the binding. * `
|
168
|
-
# deleted:principal://iam.googleapis.com/locations/global/workforcePools/`
|
169
|
-
# pool_id`/subject/`subject_attribute_value``: Deleted single identity in a
|
170
|
-
# workforce identity pool. For example, `deleted:principal://iam.googleapis.com/
|
171
|
-
# locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
|
172
|
-
# Corresponds to the JSON property `members`
|
60
|
+
# Optional. List of the HTTP headers to forward to the extension (from the
|
61
|
+
# client). If omitted, all headers are sent. Each element is a string indicating
|
62
|
+
# the header name.
|
63
|
+
# Corresponds to the JSON property `forwardHeaders`
|
173
64
|
# @return [Array<String>]
|
174
|
-
attr_accessor :
|
65
|
+
attr_accessor :forward_headers
|
66
|
+
|
67
|
+
# Optional. Set of labels associated with the `AuthzExtension` resource. The
|
68
|
+
# format must comply with [the requirements for labels](/compute/docs/labeling-
|
69
|
+
# resources#requirements) for Google Cloud resources.
|
70
|
+
# Corresponds to the JSON property `labels`
|
71
|
+
# @return [Hash<String,String>]
|
72
|
+
attr_accessor :labels
|
73
|
+
|
74
|
+
# Required. All backend services and forwarding rules referenced by this
|
75
|
+
# extension must share the same load balancing scheme. Supported values: `
|
76
|
+
# INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to [Backend
|
77
|
+
# services overview](https://cloud.google.com/load-balancing/docs/backend-
|
78
|
+
# service).
|
79
|
+
# Corresponds to the JSON property `loadBalancingScheme`
|
80
|
+
# @return [String]
|
81
|
+
attr_accessor :load_balancing_scheme
|
82
|
+
|
83
|
+
# Optional. The metadata provided here is included as part of the `
|
84
|
+
# metadata_context` (of type `google.protobuf.Struct`) in the `ProcessingRequest`
|
85
|
+
# message sent to the extension server. The metadata is available under the
|
86
|
+
# namespace `com.google.authz_extension.`. The following variables are supported
|
87
|
+
# in the metadata Struct: ``forwarding_rule_id`` - substituted with the
|
88
|
+
# forwarding rule's fully qualified resource name.
|
89
|
+
# Corresponds to the JSON property `metadata`
|
90
|
+
# @return [Hash<String,Object>]
|
91
|
+
attr_accessor :metadata
|
92
|
+
|
93
|
+
# Required. Identifier. Name of the `AuthzExtension` resource in the following
|
94
|
+
# format: `projects/`project`/locations/`location`/authzExtensions/`
|
95
|
+
# authz_extension``.
|
96
|
+
# Corresponds to the JSON property `name`
|
97
|
+
# @return [String]
|
98
|
+
attr_accessor :name
|
175
99
|
|
176
|
-
#
|
177
|
-
#
|
178
|
-
#
|
179
|
-
#
|
180
|
-
#
|
181
|
-
#
|
100
|
+
# Required. The reference to the service that runs the extension. To configure a
|
101
|
+
# callout extension, `service` must be a fully-qualified reference to a [backend
|
102
|
+
# service](https://cloud.google.com/compute/docs/reference/rest/v1/
|
103
|
+
# backendServices) in the format: `https://www.googleapis.com/compute/v1/
|
104
|
+
# projects/`project`/regions/`region`/backendServices/`backendService`` or `
|
105
|
+
# https://www.googleapis.com/compute/v1/projects/`project`/global/
|
106
|
+
# backendServices/`backendService``.
|
107
|
+
# Corresponds to the JSON property `service`
|
108
|
+
# @return [String]
|
109
|
+
attr_accessor :service
|
110
|
+
|
111
|
+
# Required. Specifies the timeout for each individual message on the stream. The
|
112
|
+
# timeout must be between 10-10000 milliseconds.
|
113
|
+
# Corresponds to the JSON property `timeout`
|
114
|
+
# @return [String]
|
115
|
+
attr_accessor :timeout
|
116
|
+
|
117
|
+
# Output only. The timestamp when the resource was updated.
|
118
|
+
# Corresponds to the JSON property `updateTime`
|
119
|
+
# @return [String]
|
120
|
+
attr_accessor :update_time
|
121
|
+
|
122
|
+
# Optional. The format of communication supported by the callout extension. If
|
123
|
+
# not specified, the default is `EXT_PROC_GRPC`.
|
124
|
+
# Corresponds to the JSON property `wireFormat`
|
182
125
|
# @return [String]
|
183
|
-
attr_accessor :
|
126
|
+
attr_accessor :wire_format
|
184
127
|
|
185
128
|
def initialize(**args)
|
186
129
|
update!(**args)
|
@@ -188,9 +131,19 @@ module Google
|
|
188
131
|
|
189
132
|
# Update properties of this object
|
190
133
|
def update!(**args)
|
191
|
-
@
|
192
|
-
@
|
193
|
-
@
|
134
|
+
@authority = args[:authority] if args.key?(:authority)
|
135
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
136
|
+
@description = args[:description] if args.key?(:description)
|
137
|
+
@fail_open = args[:fail_open] if args.key?(:fail_open)
|
138
|
+
@forward_headers = args[:forward_headers] if args.key?(:forward_headers)
|
139
|
+
@labels = args[:labels] if args.key?(:labels)
|
140
|
+
@load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme)
|
141
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
142
|
+
@name = args[:name] if args.key?(:name)
|
143
|
+
@service = args[:service] if args.key?(:service)
|
144
|
+
@timeout = args[:timeout] if args.key?(:timeout)
|
145
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
146
|
+
@wire_format = args[:wire_format] if args.key?(:wire_format)
|
194
147
|
end
|
195
148
|
end
|
196
149
|
|
@@ -290,7 +243,7 @@ module Google
|
|
290
243
|
# @return [Hash<String,String>]
|
291
244
|
attr_accessor :labels
|
292
245
|
|
293
|
-
#
|
246
|
+
# Identifier. Name of the EndpointPolicy resource. It matches pattern `projects/`
|
294
247
|
# project`/locations/global/endpointPolicies/`endpoint_policy``.
|
295
248
|
# Corresponds to the JSON property `name`
|
296
249
|
# @return [String]
|
@@ -340,60 +293,6 @@ module Google
|
|
340
293
|
end
|
341
294
|
end
|
342
295
|
|
343
|
-
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
344
|
-
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
345
|
-
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
346
|
-
# "Summary size limit" description: "Determines if a summary is less than 100
|
347
|
-
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
348
|
-
# Requestor is owner" description: "Determines if requestor is the document
|
349
|
-
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
350
|
-
# Logic): title: "Public documents" description: "Determine whether the document
|
351
|
-
# should be publicly visible" expression: "document.type != 'private' &&
|
352
|
-
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
353
|
-
# string" description: "Create a notification string with a timestamp."
|
354
|
-
# expression: "'New message received at ' + string(document.create_time)" The
|
355
|
-
# exact variables and functions that may be referenced within an expression are
|
356
|
-
# determined by the service that evaluates it. See the service documentation for
|
357
|
-
# additional information.
|
358
|
-
class Expr
|
359
|
-
include Google::Apis::Core::Hashable
|
360
|
-
|
361
|
-
# Optional. Description of the expression. This is a longer text which describes
|
362
|
-
# the expression, e.g. when hovered over it in a UI.
|
363
|
-
# Corresponds to the JSON property `description`
|
364
|
-
# @return [String]
|
365
|
-
attr_accessor :description
|
366
|
-
|
367
|
-
# Textual representation of an expression in Common Expression Language syntax.
|
368
|
-
# Corresponds to the JSON property `expression`
|
369
|
-
# @return [String]
|
370
|
-
attr_accessor :expression
|
371
|
-
|
372
|
-
# Optional. String indicating the location of the expression for error reporting,
|
373
|
-
# e.g. a file name and a position in the file.
|
374
|
-
# Corresponds to the JSON property `location`
|
375
|
-
# @return [String]
|
376
|
-
attr_accessor :location
|
377
|
-
|
378
|
-
# Optional. Title for the expression, i.e. a short string describing its purpose.
|
379
|
-
# This can be used e.g. in UIs which allow to enter the expression.
|
380
|
-
# Corresponds to the JSON property `title`
|
381
|
-
# @return [String]
|
382
|
-
attr_accessor :title
|
383
|
-
|
384
|
-
def initialize(**args)
|
385
|
-
update!(**args)
|
386
|
-
end
|
387
|
-
|
388
|
-
# Update properties of this object
|
389
|
-
def update!(**args)
|
390
|
-
@description = args[:description] if args.key?(:description)
|
391
|
-
@expression = args[:expression] if args.key?(:expression)
|
392
|
-
@location = args[:location] if args.key?(:location)
|
393
|
-
@title = args[:title] if args.key?(:title)
|
394
|
-
end
|
395
|
-
end
|
396
|
-
|
397
296
|
# A single extension chain wrapper that contains the match conditions and
|
398
297
|
# extensions to execute.
|
399
298
|
class ExtensionChain
|
@@ -438,7 +337,8 @@ module Google
|
|
438
337
|
include Google::Apis::Core::Hashable
|
439
338
|
|
440
339
|
# Optional. The `:authority` header in the gRPC request sent from Envoy to the
|
441
|
-
# extension service. Required for Callout extensions.
|
340
|
+
# extension service. Required for Callout extensions. This field is not
|
341
|
+
# supported for plugin extensions. Setting it results in a validation error.
|
442
342
|
# Corresponds to the JSON property `authority`
|
443
343
|
# @return [String]
|
444
344
|
attr_accessor :authority
|
@@ -464,6 +364,18 @@ module Google
|
|
464
364
|
# @return [Array<String>]
|
465
365
|
attr_accessor :forward_headers
|
466
366
|
|
367
|
+
# Optional. The metadata provided here is included as part of the `
|
368
|
+
# metadata_context` (of type `google.protobuf.Struct`) in the `ProcessingRequest`
|
369
|
+
# message sent to the extension server. The metadata is available under the
|
370
|
+
# namespace `com.google....`. For example: `com.google.lb_traffic_extension.
|
371
|
+
# lbtrafficextension1.chain1.ext1`. The following variables are supported in the
|
372
|
+
# metadata: ``forwarding_rule_id`` - substituted with the forwarding rule's
|
373
|
+
# fully qualified resource name. This field is not supported for plugin
|
374
|
+
# extensions. Setting it results in a validation error.
|
375
|
+
# Corresponds to the JSON property `metadata`
|
376
|
+
# @return [Hash<String,Object>]
|
377
|
+
attr_accessor :metadata
|
378
|
+
|
467
379
|
# Required. The name for this extension. The name is logged as part of the HTTP
|
468
380
|
# request logs. The name must conform with RFC-1034, is restricted to lower-
|
469
381
|
# cased letters, numbers and hyphens, and can have a maximum length of 63
|
@@ -473,26 +385,35 @@ module Google
|
|
473
385
|
# @return [String]
|
474
386
|
attr_accessor :name
|
475
387
|
|
476
|
-
# Required. The reference to the service that runs the extension.
|
477
|
-
# callout
|
478
|
-
# service
|
479
|
-
#
|
480
|
-
#
|
481
|
-
#
|
482
|
-
#
|
388
|
+
# Required. The reference to the service that runs the extension. To configure a
|
389
|
+
# callout extension, `service` must be a fully-qualified reference to a [backend
|
390
|
+
# service](https://cloud.google.com/compute/docs/reference/rest/v1/
|
391
|
+
# backendServices) in the format: `https://www.googleapis.com/compute/v1/
|
392
|
+
# projects/`project`/regions/`region`/backendServices/`backendService`` or `
|
393
|
+
# https://www.googleapis.com/compute/v1/projects/`project`/global/
|
394
|
+
# backendServices/`backendService``. To configure a plugin extension, `service`
|
395
|
+
# must be a reference to a [`WasmPlugin` resource](https://cloud.google.com/
|
396
|
+
# service-extensions/docs/reference/rest/v1beta1/projects.locations.wasmPlugins)
|
397
|
+
# in the format: `projects/`project`/locations/`location`/wasmPlugins/`plugin``
|
398
|
+
# or `//networkservices.googleapis.com/projects/`project`/locations/`location`/
|
399
|
+
# wasmPlugins/`wasmPlugin``. Plugin extensions are currently supported for the `
|
400
|
+
# LbTrafficExtension` and the `LbRouteExtension` resources.
|
483
401
|
# Corresponds to the JSON property `service`
|
484
402
|
# @return [String]
|
485
403
|
attr_accessor :service
|
486
404
|
|
487
405
|
# Optional. A set of events during request or response processing for which this
|
488
406
|
# extension is called. This field is required for the `LbTrafficExtension`
|
489
|
-
# resource. It must not be set for the `LbRouteExtension` resource
|
407
|
+
# resource. It must not be set for the `LbRouteExtension` resource, otherwise a
|
408
|
+
# validation error is returned.
|
490
409
|
# Corresponds to the JSON property `supportedEvents`
|
491
410
|
# @return [Array<String>]
|
492
411
|
attr_accessor :supported_events
|
493
412
|
|
494
413
|
# Optional. Specifies the timeout for each individual message on the stream. The
|
495
|
-
# timeout must be between 10
|
414
|
+
# timeout must be between `10`-`1000` milliseconds. Required for callout
|
415
|
+
# extensions. This field is not supported for plugin extensions. Setting it
|
416
|
+
# results in a validation error.
|
496
417
|
# Corresponds to the JSON property `timeout`
|
497
418
|
# @return [String]
|
498
419
|
attr_accessor :timeout
|
@@ -506,6 +427,7 @@ module Google
|
|
506
427
|
@authority = args[:authority] if args.key?(:authority)
|
507
428
|
@fail_open = args[:fail_open] if args.key?(:fail_open)
|
508
429
|
@forward_headers = args[:forward_headers] if args.key?(:forward_headers)
|
430
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
509
431
|
@name = args[:name] if args.key?(:name)
|
510
432
|
@service = args[:service] if args.key?(:service)
|
511
433
|
@supported_events = args[:supported_events] if args.key?(:supported_events)
|
@@ -593,7 +515,7 @@ module Google
|
|
593
515
|
# @return [Hash<String,String>]
|
594
516
|
attr_accessor :labels
|
595
517
|
|
596
|
-
#
|
518
|
+
# Identifier. Name of the Gateway resource. It matches pattern `projects/*/
|
597
519
|
# locations/*/gateways/`.
|
598
520
|
# Corresponds to the JSON property `name`
|
599
521
|
# @return [String]
|
@@ -614,6 +536,13 @@ module Google
|
|
614
536
|
# @return [Array<Fixnum>]
|
615
537
|
attr_accessor :ports
|
616
538
|
|
539
|
+
# Optional. The routing mode of the Gateway. This field is configurable only for
|
540
|
+
# gateways of type SECURE_WEB_GATEWAY. This field is required for gateways of
|
541
|
+
# type SECURE_WEB_GATEWAY.
|
542
|
+
# Corresponds to the JSON property `routingMode`
|
543
|
+
# @return [String]
|
544
|
+
attr_accessor :routing_mode
|
545
|
+
|
617
546
|
# Optional. Scope determines how configuration across multiple Gateway instances
|
618
547
|
# are merged. The configuration for multiple Gateway instances with the same
|
619
548
|
# scope will be merged as presented as a single coniguration to the proxy/load
|
@@ -670,6 +599,7 @@ module Google
|
|
670
599
|
@name = args[:name] if args.key?(:name)
|
671
600
|
@network = args[:network] if args.key?(:network)
|
672
601
|
@ports = args[:ports] if args.key?(:ports)
|
602
|
+
@routing_mode = args[:routing_mode] if args.key?(:routing_mode)
|
673
603
|
@scope = args[:scope] if args.key?(:scope)
|
674
604
|
@self_link = args[:self_link] if args.key?(:self_link)
|
675
605
|
@server_tls_policy = args[:server_tls_policy] if args.key?(:server_tls_policy)
|
@@ -679,6 +609,51 @@ module Google
|
|
679
609
|
end
|
680
610
|
end
|
681
611
|
|
612
|
+
# GatewayRouteView defines view-only resource for Routes to a Gateway
|
613
|
+
class GatewayRouteView
|
614
|
+
include Google::Apis::Core::Hashable
|
615
|
+
|
616
|
+
# Output only. Identifier. Full path name of the GatewayRouteView resource.
|
617
|
+
# Format: projects/`project_number`/locations/`location`/gateways/`gateway_name`/
|
618
|
+
# routeViews/`route_view_name`
|
619
|
+
# Corresponds to the JSON property `name`
|
620
|
+
# @return [String]
|
621
|
+
attr_accessor :name
|
622
|
+
|
623
|
+
# Output only. The resource id for the route.
|
624
|
+
# Corresponds to the JSON property `routeId`
|
625
|
+
# @return [String]
|
626
|
+
attr_accessor :route_id
|
627
|
+
|
628
|
+
# Output only. Location where the route exists.
|
629
|
+
# Corresponds to the JSON property `routeLocation`
|
630
|
+
# @return [String]
|
631
|
+
attr_accessor :route_location
|
632
|
+
|
633
|
+
# Output only. Project number where the route exists.
|
634
|
+
# Corresponds to the JSON property `routeProjectNumber`
|
635
|
+
# @return [Fixnum]
|
636
|
+
attr_accessor :route_project_number
|
637
|
+
|
638
|
+
# Output only. Type of the route: HttpRoute,GrpcRoute,TcpRoute, or TlsRoute
|
639
|
+
# Corresponds to the JSON property `routeType`
|
640
|
+
# @return [String]
|
641
|
+
attr_accessor :route_type
|
642
|
+
|
643
|
+
def initialize(**args)
|
644
|
+
update!(**args)
|
645
|
+
end
|
646
|
+
|
647
|
+
# Update properties of this object
|
648
|
+
def update!(**args)
|
649
|
+
@name = args[:name] if args.key?(:name)
|
650
|
+
@route_id = args[:route_id] if args.key?(:route_id)
|
651
|
+
@route_location = args[:route_location] if args.key?(:route_location)
|
652
|
+
@route_project_number = args[:route_project_number] if args.key?(:route_project_number)
|
653
|
+
@route_type = args[:route_type] if args.key?(:route_type)
|
654
|
+
end
|
655
|
+
end
|
656
|
+
|
682
657
|
# GrpcRoute is the resource defining how gRPC traffic routed by a Mesh or
|
683
658
|
# Gateway resource is routed.
|
684
659
|
class GrpcRoute
|
@@ -737,7 +712,7 @@ module Google
|
|
737
712
|
# @return [Array<String>]
|
738
713
|
attr_accessor :meshes
|
739
714
|
|
740
|
-
#
|
715
|
+
# Identifier. Name of the GrpcRoute resource. It matches pattern `projects/*/
|
741
716
|
# locations/global/grpcRoutes/`
|
742
717
|
# Corresponds to the JSON property `name`
|
743
718
|
# @return [String]
|
@@ -974,7 +949,8 @@ module Google
|
|
974
949
|
end
|
975
950
|
end
|
976
951
|
|
977
|
-
# The specifications for retries.
|
952
|
+
# The specifications for retries. Specifies one or more conditions for which
|
953
|
+
# this retry rule applies. Valid values are:
|
978
954
|
class GrpcRouteRetryPolicy
|
979
955
|
include Google::Apis::Core::Hashable
|
980
956
|
|
@@ -1038,7 +1014,8 @@ module Google
|
|
1038
1014
|
# @return [String]
|
1039
1015
|
attr_accessor :idle_timeout
|
1040
1016
|
|
1041
|
-
# The specifications for retries.
|
1017
|
+
# The specifications for retries. Specifies one or more conditions for which
|
1018
|
+
# this retry rule applies. Valid values are:
|
1042
1019
|
# Corresponds to the JSON property `retryPolicy`
|
1043
1020
|
# @return [Google::Apis::NetworkservicesV1beta1::GrpcRouteRetryPolicy]
|
1044
1021
|
attr_accessor :retry_policy
|
@@ -1214,7 +1191,7 @@ module Google
|
|
1214
1191
|
# @return [Array<String>]
|
1215
1192
|
attr_accessor :meshes
|
1216
1193
|
|
1217
|
-
#
|
1194
|
+
# Identifier. Name of the HttpRoute resource. It matches pattern `projects/*/
|
1218
1195
|
# locations/global/httpRoutes/http_route_name>`.
|
1219
1196
|
# Corresponds to the JSON property `name`
|
1220
1197
|
# @return [String]
|
@@ -2084,8 +2061,8 @@ module Google
|
|
2084
2061
|
attr_accessor :extension_chains
|
2085
2062
|
|
2086
2063
|
# Required. A list of references to the forwarding rules to which this service
|
2087
|
-
# extension is attached
|
2088
|
-
#
|
2064
|
+
# extension is attached. At least one forwarding rule is required. There can be
|
2065
|
+
# only one `LbRouteExtension` resource per forwarding rule.
|
2089
2066
|
# Corresponds to the JSON property `forwardingRules`
|
2090
2067
|
# @return [Array<String>]
|
2091
2068
|
attr_accessor :forwarding_rules
|
@@ -2099,8 +2076,8 @@ module Google
|
|
2099
2076
|
|
2100
2077
|
# Required. All backend services and forwarding rules referenced by this
|
2101
2078
|
# extension must share the same load balancing scheme. Supported values: `
|
2102
|
-
# INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to [
|
2103
|
-
#
|
2079
|
+
# INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to [Backend
|
2080
|
+
# services overview](https://cloud.google.com/load-balancing/docs/backend-
|
2104
2081
|
# service).
|
2105
2082
|
# Corresponds to the JSON property `loadBalancingScheme`
|
2106
2083
|
# @return [String]
|
@@ -2111,7 +2088,8 @@ module Google
|
|
2111
2088
|
# message sent to the extension server. The metadata is available under the
|
2112
2089
|
# namespace `com.google.lb_route_extension.`. The following variables are
|
2113
2090
|
# supported in the metadata Struct: ``forwarding_rule_id`` - substituted with
|
2114
|
-
# the forwarding rule's fully qualified resource name.
|
2091
|
+
# the forwarding rule's fully qualified resource name. This field is not
|
2092
|
+
# supported for plugin extensions. Setting it results in a validation error.
|
2115
2093
|
# Corresponds to the JSON property `metadata`
|
2116
2094
|
# @return [Hash<String,Object>]
|
2117
2095
|
attr_accessor :metadata
|
@@ -2172,9 +2150,9 @@ module Google
|
|
2172
2150
|
# @return [Array<Google::Apis::NetworkservicesV1beta1::ExtensionChain>]
|
2173
2151
|
attr_accessor :extension_chains
|
2174
2152
|
|
2175
|
-
#
|
2176
|
-
# extension is attached
|
2177
|
-
#
|
2153
|
+
# Optional. A list of references to the forwarding rules to which this service
|
2154
|
+
# extension is attached. At least one forwarding rule is required. There can be
|
2155
|
+
# only one `LBTrafficExtension` resource per forwarding rule.
|
2178
2156
|
# Corresponds to the JSON property `forwardingRules`
|
2179
2157
|
# @return [Array<String>]
|
2180
2158
|
attr_accessor :forwarding_rules
|
@@ -2188,8 +2166,8 @@ module Google
|
|
2188
2166
|
|
2189
2167
|
# Required. All backend services and forwarding rules referenced by this
|
2190
2168
|
# extension must share the same load balancing scheme. Supported values: `
|
2191
|
-
# INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to [
|
2192
|
-
#
|
2169
|
+
# INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to [Backend
|
2170
|
+
# services overview](https://cloud.google.com/load-balancing/docs/backend-
|
2193
2171
|
# service).
|
2194
2172
|
# Corresponds to the JSON property `loadBalancingScheme`
|
2195
2173
|
# @return [String]
|
@@ -2199,7 +2177,8 @@ module Google
|
|
2199
2177
|
# metadata_context.filter_metadata` map field. The metadata is available under
|
2200
2178
|
# the key `com.google.lb_traffic_extension.`. The following variables are
|
2201
2179
|
# supported in the metadata: ``forwarding_rule_id`` - substituted with the
|
2202
|
-
# forwarding rule's fully qualified resource name.
|
2180
|
+
# forwarding rule's fully qualified resource name. This field is not supported
|
2181
|
+
# for plugin extensions. Setting it results in a validation error.
|
2203
2182
|
# Corresponds to the JSON property `metadata`
|
2204
2183
|
# @return [Hash<String,Object>]
|
2205
2184
|
attr_accessor :metadata
|
@@ -2234,6 +2213,37 @@ module Google
|
|
2234
2213
|
end
|
2235
2214
|
end
|
2236
2215
|
|
2216
|
+
# Message for response to listing `AuthzExtension` resources.
|
2217
|
+
class ListAuthzExtensionsResponse
|
2218
|
+
include Google::Apis::Core::Hashable
|
2219
|
+
|
2220
|
+
# The list of `AuthzExtension` resources.
|
2221
|
+
# Corresponds to the JSON property `authzExtensions`
|
2222
|
+
# @return [Array<Google::Apis::NetworkservicesV1beta1::AuthzExtension>]
|
2223
|
+
attr_accessor :authz_extensions
|
2224
|
+
|
2225
|
+
# A token identifying a page of results that the server returns.
|
2226
|
+
# Corresponds to the JSON property `nextPageToken`
|
2227
|
+
# @return [String]
|
2228
|
+
attr_accessor :next_page_token
|
2229
|
+
|
2230
|
+
# Locations that could not be reached.
|
2231
|
+
# Corresponds to the JSON property `unreachable`
|
2232
|
+
# @return [Array<String>]
|
2233
|
+
attr_accessor :unreachable
|
2234
|
+
|
2235
|
+
def initialize(**args)
|
2236
|
+
update!(**args)
|
2237
|
+
end
|
2238
|
+
|
2239
|
+
# Update properties of this object
|
2240
|
+
def update!(**args)
|
2241
|
+
@authz_extensions = args[:authz_extensions] if args.key?(:authz_extensions)
|
2242
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
2243
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
2244
|
+
end
|
2245
|
+
end
|
2246
|
+
|
2237
2247
|
# Response returned by the ListEndpointPolicies method.
|
2238
2248
|
class ListEndpointPoliciesResponse
|
2239
2249
|
include Google::Apis::Core::Hashable
|
@@ -2261,6 +2271,32 @@ module Google
|
|
2261
2271
|
end
|
2262
2272
|
end
|
2263
2273
|
|
2274
|
+
# Response returned by the ListGatewayRouteViews method.
|
2275
|
+
class ListGatewayRouteViewsResponse
|
2276
|
+
include Google::Apis::Core::Hashable
|
2277
|
+
|
2278
|
+
# List of GatewayRouteView resources.
|
2279
|
+
# Corresponds to the JSON property `gatewayRouteViews`
|
2280
|
+
# @return [Array<Google::Apis::NetworkservicesV1beta1::GatewayRouteView>]
|
2281
|
+
attr_accessor :gateway_route_views
|
2282
|
+
|
2283
|
+
# A token, which can be sent as `page_token` to retrieve the next page. If this
|
2284
|
+
# field is omitted, there are no subsequent pages.
|
2285
|
+
# Corresponds to the JSON property `nextPageToken`
|
2286
|
+
# @return [String]
|
2287
|
+
attr_accessor :next_page_token
|
2288
|
+
|
2289
|
+
def initialize(**args)
|
2290
|
+
update!(**args)
|
2291
|
+
end
|
2292
|
+
|
2293
|
+
# Update properties of this object
|
2294
|
+
def update!(**args)
|
2295
|
+
@gateway_route_views = args[:gateway_route_views] if args.key?(:gateway_route_views)
|
2296
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
2297
|
+
end
|
2298
|
+
end
|
2299
|
+
|
2264
2300
|
# Response returned by the ListGateways method.
|
2265
2301
|
class ListGatewaysResponse
|
2266
2302
|
include Google::Apis::Core::Hashable
|
@@ -2435,6 +2471,32 @@ module Google
|
|
2435
2471
|
end
|
2436
2472
|
end
|
2437
2473
|
|
2474
|
+
# Response returned by the ListMeshRouteViews method.
|
2475
|
+
class ListMeshRouteViewsResponse
|
2476
|
+
include Google::Apis::Core::Hashable
|
2477
|
+
|
2478
|
+
# List of MeshRouteView resources.
|
2479
|
+
# Corresponds to the JSON property `meshRouteViews`
|
2480
|
+
# @return [Array<Google::Apis::NetworkservicesV1beta1::MeshRouteView>]
|
2481
|
+
attr_accessor :mesh_route_views
|
2482
|
+
|
2483
|
+
# A token, which can be sent as `page_token` to retrieve the next page. If this
|
2484
|
+
# field is omitted, there are no subsequent pages.
|
2485
|
+
# Corresponds to the JSON property `nextPageToken`
|
2486
|
+
# @return [String]
|
2487
|
+
attr_accessor :next_page_token
|
2488
|
+
|
2489
|
+
def initialize(**args)
|
2490
|
+
update!(**args)
|
2491
|
+
end
|
2492
|
+
|
2493
|
+
# Update properties of this object
|
2494
|
+
def update!(**args)
|
2495
|
+
@mesh_route_views = args[:mesh_route_views] if args.key?(:mesh_route_views)
|
2496
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
2497
|
+
end
|
2498
|
+
end
|
2499
|
+
|
2438
2500
|
# Response returned by the ListMeshes method.
|
2439
2501
|
class ListMeshesResponse
|
2440
2502
|
include Google::Apis::Core::Hashable
|
@@ -2595,6 +2657,60 @@ module Google
|
|
2595
2657
|
end
|
2596
2658
|
end
|
2597
2659
|
|
2660
|
+
# Response returned by the `ListWasmPluginVersions` method.
|
2661
|
+
class ListWasmPluginVersionsResponse
|
2662
|
+
include Google::Apis::Core::Hashable
|
2663
|
+
|
2664
|
+
# If there might be more results than those appearing in this response, then `
|
2665
|
+
# next_page_token` is included. To get the next set of results, call this method
|
2666
|
+
# again using the value of `next_page_token` as `page_token`.
|
2667
|
+
# Corresponds to the JSON property `nextPageToken`
|
2668
|
+
# @return [String]
|
2669
|
+
attr_accessor :next_page_token
|
2670
|
+
|
2671
|
+
# List of `WasmPluginVersion` resources.
|
2672
|
+
# Corresponds to the JSON property `wasmPluginVersions`
|
2673
|
+
# @return [Array<Google::Apis::NetworkservicesV1beta1::WasmPluginVersion>]
|
2674
|
+
attr_accessor :wasm_plugin_versions
|
2675
|
+
|
2676
|
+
def initialize(**args)
|
2677
|
+
update!(**args)
|
2678
|
+
end
|
2679
|
+
|
2680
|
+
# Update properties of this object
|
2681
|
+
def update!(**args)
|
2682
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
2683
|
+
@wasm_plugin_versions = args[:wasm_plugin_versions] if args.key?(:wasm_plugin_versions)
|
2684
|
+
end
|
2685
|
+
end
|
2686
|
+
|
2687
|
+
# Response returned by the `ListWasmPlugins` method.
|
2688
|
+
class ListWasmPluginsResponse
|
2689
|
+
include Google::Apis::Core::Hashable
|
2690
|
+
|
2691
|
+
# If there might be more results than those appearing in this response, then `
|
2692
|
+
# next_page_token` is included. To get the next set of results, call this method
|
2693
|
+
# again using the value of `next_page_token` as `page_token`.
|
2694
|
+
# Corresponds to the JSON property `nextPageToken`
|
2695
|
+
# @return [String]
|
2696
|
+
attr_accessor :next_page_token
|
2697
|
+
|
2698
|
+
# List of `WasmPlugin` resources.
|
2699
|
+
# Corresponds to the JSON property `wasmPlugins`
|
2700
|
+
# @return [Array<Google::Apis::NetworkservicesV1beta1::WasmPlugin>]
|
2701
|
+
attr_accessor :wasm_plugins
|
2702
|
+
|
2703
|
+
def initialize(**args)
|
2704
|
+
update!(**args)
|
2705
|
+
end
|
2706
|
+
|
2707
|
+
# Update properties of this object
|
2708
|
+
def update!(**args)
|
2709
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
2710
|
+
@wasm_plugins = args[:wasm_plugins] if args.key?(:wasm_plugins)
|
2711
|
+
end
|
2712
|
+
end
|
2713
|
+
|
2598
2714
|
# A resource that represents a Google Cloud location.
|
2599
2715
|
class Location
|
2600
2716
|
include Google::Apis::Core::Hashable
|
@@ -2642,6 +2758,28 @@ module Google
|
|
2642
2758
|
end
|
2643
2759
|
end
|
2644
2760
|
|
2761
|
+
# The configuration for Platform Telemetry logging for Eventarc Avdvanced
|
2762
|
+
# resources.
|
2763
|
+
class LoggingConfig
|
2764
|
+
include Google::Apis::Core::Hashable
|
2765
|
+
|
2766
|
+
# Optional. The minimum severity of logs that will be sent to Stackdriver/
|
2767
|
+
# Platform Telemetry. Logs at severitiy ≥ this value will be sent, unless it is
|
2768
|
+
# NONE.
|
2769
|
+
# Corresponds to the JSON property `logSeverity`
|
2770
|
+
# @return [String]
|
2771
|
+
attr_accessor :log_severity
|
2772
|
+
|
2773
|
+
def initialize(**args)
|
2774
|
+
update!(**args)
|
2775
|
+
end
|
2776
|
+
|
2777
|
+
# Update properties of this object
|
2778
|
+
def update!(**args)
|
2779
|
+
@log_severity = args[:log_severity] if args.key?(:log_severity)
|
2780
|
+
end
|
2781
|
+
end
|
2782
|
+
|
2645
2783
|
# Mesh represents a logical configuration grouping for workload to workload
|
2646
2784
|
# communication within a service mesh. Routes that point to mesh dictate how
|
2647
2785
|
# requests are routed within this logical mesh boundary.
|
@@ -2679,8 +2817,8 @@ module Google
|
|
2679
2817
|
# @return [Hash<String,String>]
|
2680
2818
|
attr_accessor :labels
|
2681
2819
|
|
2682
|
-
#
|
2683
|
-
# global/meshes/`.
|
2820
|
+
# Identifier. Name of the Mesh resource. It matches pattern `projects/*/
|
2821
|
+
# locations/global/meshes/`.
|
2684
2822
|
# Corresponds to the JSON property `name`
|
2685
2823
|
# @return [String]
|
2686
2824
|
attr_accessor :name
|
@@ -2712,6 +2850,51 @@ module Google
|
|
2712
2850
|
end
|
2713
2851
|
end
|
2714
2852
|
|
2853
|
+
# MeshRouteView defines view-only resource for Routes to a Mesh
|
2854
|
+
class MeshRouteView
|
2855
|
+
include Google::Apis::Core::Hashable
|
2856
|
+
|
2857
|
+
# Output only. Identifier. Full path name of the MeshRouteView resource. Format:
|
2858
|
+
# projects/`project_number`/locations/`location`/meshes/`mesh_name`/routeViews/`
|
2859
|
+
# route_view_name`
|
2860
|
+
# Corresponds to the JSON property `name`
|
2861
|
+
# @return [String]
|
2862
|
+
attr_accessor :name
|
2863
|
+
|
2864
|
+
# Output only. The resource id for the route.
|
2865
|
+
# Corresponds to the JSON property `routeId`
|
2866
|
+
# @return [String]
|
2867
|
+
attr_accessor :route_id
|
2868
|
+
|
2869
|
+
# Output only. Location where the route exists.
|
2870
|
+
# Corresponds to the JSON property `routeLocation`
|
2871
|
+
# @return [String]
|
2872
|
+
attr_accessor :route_location
|
2873
|
+
|
2874
|
+
# Output only. Project number where the route exists.
|
2875
|
+
# Corresponds to the JSON property `routeProjectNumber`
|
2876
|
+
# @return [Fixnum]
|
2877
|
+
attr_accessor :route_project_number
|
2878
|
+
|
2879
|
+
# Output only. Type of the route: HttpRoute,GrpcRoute,TcpRoute, or TlsRoute
|
2880
|
+
# Corresponds to the JSON property `routeType`
|
2881
|
+
# @return [String]
|
2882
|
+
attr_accessor :route_type
|
2883
|
+
|
2884
|
+
def initialize(**args)
|
2885
|
+
update!(**args)
|
2886
|
+
end
|
2887
|
+
|
2888
|
+
# Update properties of this object
|
2889
|
+
def update!(**args)
|
2890
|
+
@name = args[:name] if args.key?(:name)
|
2891
|
+
@route_id = args[:route_id] if args.key?(:route_id)
|
2892
|
+
@route_location = args[:route_location] if args.key?(:route_location)
|
2893
|
+
@route_project_number = args[:route_project_number] if args.key?(:route_project_number)
|
2894
|
+
@route_type = args[:route_type] if args.key?(:route_type)
|
2895
|
+
end
|
2896
|
+
end
|
2897
|
+
|
2715
2898
|
# The matcher that is based on node metadata presented by xDS clients.
|
2716
2899
|
class MetadataLabelMatcher
|
2717
2900
|
include Google::Apis::Core::Hashable
|
@@ -2898,87 +3081,14 @@ module Google
|
|
2898
3081
|
end
|
2899
3082
|
end
|
2900
3083
|
|
2901
|
-
#
|
2902
|
-
|
2903
|
-
|
2904
|
-
|
2905
|
-
|
2906
|
-
|
2907
|
-
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
2908
|
-
# logical expression that allows access to a resource only if the expression
|
2909
|
-
# evaluates to `true`. A condition can add constraints based on attributes of
|
2910
|
-
# the request, the resource, or both. To learn which resources support
|
2911
|
-
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
2912
|
-
# google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
|
2913
|
-
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
2914
|
-
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
2915
|
-
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
2916
|
-
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
2917
|
-
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
2918
|
-
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
2919
|
-
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
|
2920
|
-
# example:** ``` bindings: - members: - user:mike@example.com - group:admins@
|
2921
|
-
# example.com - domain:google.com - serviceAccount:my-project-id@appspot.
|
2922
|
-
# gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
|
2923
|
-
# user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
|
2924
|
-
# title: expirable access description: Does not grant access after Sep 2020
|
2925
|
-
# expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
2926
|
-
# BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
|
2927
|
-
# [IAM documentation](https://cloud.google.com/iam/docs/).
|
2928
|
-
class Policy
|
2929
|
-
include Google::Apis::Core::Hashable
|
2930
|
-
|
2931
|
-
# Specifies cloud audit logging configuration for this policy.
|
2932
|
-
# Corresponds to the JSON property `auditConfigs`
|
2933
|
-
# @return [Array<Google::Apis::NetworkservicesV1beta1::AuditConfig>]
|
2934
|
-
attr_accessor :audit_configs
|
2935
|
-
|
2936
|
-
# Associates a list of `members`, or principals, with a `role`. Optionally, may
|
2937
|
-
# specify a `condition` that determines how and when the `bindings` are applied.
|
2938
|
-
# Each of the `bindings` must contain at least one principal. The `bindings` in
|
2939
|
-
# a `Policy` can refer to up to 1,500 principals; up to 250 of these principals
|
2940
|
-
# can be Google groups. Each occurrence of a principal counts towards these
|
2941
|
-
# limits. For example, if the `bindings` grant 50 different roles to `user:alice@
|
2942
|
-
# example.com`, and not to any other principal, then you can add another 1,450
|
2943
|
-
# principals to the `bindings` in the `Policy`.
|
2944
|
-
# Corresponds to the JSON property `bindings`
|
2945
|
-
# @return [Array<Google::Apis::NetworkservicesV1beta1::Binding>]
|
2946
|
-
attr_accessor :bindings
|
2947
|
-
|
2948
|
-
# `etag` is used for optimistic concurrency control as a way to help prevent
|
2949
|
-
# simultaneous updates of a policy from overwriting each other. It is strongly
|
2950
|
-
# suggested that systems make use of the `etag` in the read-modify-write cycle
|
2951
|
-
# to perform policy updates in order to avoid race conditions: An `etag` is
|
2952
|
-
# returned in the response to `getIamPolicy`, and systems are expected to put
|
2953
|
-
# that etag in the request to `setIamPolicy` to ensure that their change will be
|
2954
|
-
# applied to the same version of the policy. **Important:** If you use IAM
|
2955
|
-
# Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
|
2956
|
-
# If you omit this field, then IAM allows you to overwrite a version `3` policy
|
2957
|
-
# with a version `1` policy, and all of the conditions in the version `3` policy
|
2958
|
-
# are lost.
|
2959
|
-
# Corresponds to the JSON property `etag`
|
2960
|
-
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
3084
|
+
#
|
3085
|
+
class RetryFilterPerRouteConfig
|
3086
|
+
include Google::Apis::Core::Hashable
|
3087
|
+
|
3088
|
+
# The name of the crypto key to use for encrypting event data.
|
3089
|
+
# Corresponds to the JSON property `cryptoKeyName`
|
2961
3090
|
# @return [String]
|
2962
|
-
attr_accessor :
|
2963
|
-
|
2964
|
-
# Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
|
2965
|
-
# Requests that specify an invalid value are rejected. Any operation that
|
2966
|
-
# affects conditional role bindings must specify version `3`. This requirement
|
2967
|
-
# applies to the following operations: * Getting a policy that includes a
|
2968
|
-
# conditional role binding * Adding a conditional role binding to a policy *
|
2969
|
-
# Changing a conditional role binding in a policy * Removing any role binding,
|
2970
|
-
# with or without a condition, from a policy that includes conditions **
|
2971
|
-
# Important:** If you use IAM Conditions, you must include the `etag` field
|
2972
|
-
# whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
|
2973
|
-
# to overwrite a version `3` policy with a version `1` policy, and all of the
|
2974
|
-
# conditions in the version `3` policy are lost. If a policy does not include
|
2975
|
-
# any conditions, operations on that policy may specify any valid version or
|
2976
|
-
# leave the field unset. To learn which resources support conditions in their
|
2977
|
-
# IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
|
2978
|
-
# conditions/resource-policies).
|
2979
|
-
# Corresponds to the JSON property `version`
|
2980
|
-
# @return [Fixnum]
|
2981
|
-
attr_accessor :version
|
3091
|
+
attr_accessor :crypto_key_name
|
2982
3092
|
|
2983
3093
|
def initialize(**args)
|
2984
3094
|
update!(**args)
|
@@ -2986,10 +3096,7 @@ module Google
|
|
2986
3096
|
|
2987
3097
|
# Update properties of this object
|
2988
3098
|
def update!(**args)
|
2989
|
-
@
|
2990
|
-
@bindings = args[:bindings] if args.key?(:bindings)
|
2991
|
-
@etag = args[:etag] if args.key?(:etag)
|
2992
|
-
@version = args[:version] if args.key?(:version)
|
3099
|
+
@crypto_key_name = args[:crypto_key_name] if args.key?(:crypto_key_name)
|
2993
3100
|
end
|
2994
3101
|
end
|
2995
3102
|
|
@@ -3013,8 +3120,8 @@ module Google
|
|
3013
3120
|
# @return [Hash<String,String>]
|
3014
3121
|
attr_accessor :labels
|
3015
3122
|
|
3016
|
-
#
|
3017
|
-
# locations/global/serviceBindings/service_binding_name`.
|
3123
|
+
# Identifier. Name of the ServiceBinding resource. It matches pattern `projects/*
|
3124
|
+
# /locations/global/serviceBindings/service_binding_name`.
|
3018
3125
|
# Corresponds to the JSON property `name`
|
3019
3126
|
# @return [String]
|
3020
3127
|
attr_accessor :name
|
@@ -3092,8 +3199,8 @@ module Google
|
|
3092
3199
|
# @return [String]
|
3093
3200
|
attr_accessor :load_balancing_algorithm
|
3094
3201
|
|
3095
|
-
#
|
3096
|
-
# project`/locations/`location`/serviceLbPolicies/`service_lb_policy_name``.
|
3202
|
+
# Identifier. Name of the ServiceLbPolicy resource. It matches pattern `projects/
|
3203
|
+
# `project`/locations/`location`/serviceLbPolicies/`service_lb_policy_name``.
|
3097
3204
|
# Corresponds to the JSON property `name`
|
3098
3205
|
# @return [String]
|
3099
3206
|
attr_accessor :name
|
@@ -3169,59 +3276,6 @@ module Google
|
|
3169
3276
|
end
|
3170
3277
|
end
|
3171
3278
|
|
3172
|
-
# Request message for `SetIamPolicy` method.
|
3173
|
-
class SetIamPolicyRequest
|
3174
|
-
include Google::Apis::Core::Hashable
|
3175
|
-
|
3176
|
-
# An Identity and Access Management (IAM) policy, which specifies access
|
3177
|
-
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
3178
|
-
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
3179
|
-
# Principals can be user accounts, service accounts, Google groups, and domains (
|
3180
|
-
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
3181
|
-
# an IAM predefined role or a user-created custom role. For some types of Google
|
3182
|
-
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
3183
|
-
# logical expression that allows access to a resource only if the expression
|
3184
|
-
# evaluates to `true`. A condition can add constraints based on attributes of
|
3185
|
-
# the request, the resource, or both. To learn which resources support
|
3186
|
-
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
3187
|
-
# google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
|
3188
|
-
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
3189
|
-
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
3190
|
-
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
3191
|
-
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
3192
|
-
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
3193
|
-
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
3194
|
-
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
|
3195
|
-
# example:** ``` bindings: - members: - user:mike@example.com - group:admins@
|
3196
|
-
# example.com - domain:google.com - serviceAccount:my-project-id@appspot.
|
3197
|
-
# gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
|
3198
|
-
# user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
|
3199
|
-
# title: expirable access description: Does not grant access after Sep 2020
|
3200
|
-
# expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
3201
|
-
# BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
|
3202
|
-
# [IAM documentation](https://cloud.google.com/iam/docs/).
|
3203
|
-
# Corresponds to the JSON property `policy`
|
3204
|
-
# @return [Google::Apis::NetworkservicesV1beta1::Policy]
|
3205
|
-
attr_accessor :policy
|
3206
|
-
|
3207
|
-
# OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
|
3208
|
-
# the fields in the mask will be modified. If no mask is provided, the following
|
3209
|
-
# default mask is used: `paths: "bindings, etag"`
|
3210
|
-
# Corresponds to the JSON property `updateMask`
|
3211
|
-
# @return [String]
|
3212
|
-
attr_accessor :update_mask
|
3213
|
-
|
3214
|
-
def initialize(**args)
|
3215
|
-
update!(**args)
|
3216
|
-
end
|
3217
|
-
|
3218
|
-
# Update properties of this object
|
3219
|
-
def update!(**args)
|
3220
|
-
@policy = args[:policy] if args.key?(:policy)
|
3221
|
-
@update_mask = args[:update_mask] if args.key?(:update_mask)
|
3222
|
-
end
|
3223
|
-
end
|
3224
|
-
|
3225
3279
|
# The `Status` type defines a logical error model that is suitable for different
|
3226
3280
|
# programming environments, including REST APIs and RPC APIs. It is used by [
|
3227
3281
|
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
@@ -3297,7 +3351,7 @@ module Google
|
|
3297
3351
|
# @return [Array<String>]
|
3298
3352
|
attr_accessor :meshes
|
3299
3353
|
|
3300
|
-
#
|
3354
|
+
# Identifier. Name of the TcpRoute resource. It matches pattern `projects/*/
|
3301
3355
|
# locations/global/tcpRoutes/tcp_route_name>`.
|
3302
3356
|
# Corresponds to the JSON property `name`
|
3303
3357
|
# @return [String]
|
@@ -3470,46 +3524,6 @@ module Google
|
|
3470
3524
|
end
|
3471
3525
|
end
|
3472
3526
|
|
3473
|
-
# Request message for `TestIamPermissions` method.
|
3474
|
-
class TestIamPermissionsRequest
|
3475
|
-
include Google::Apis::Core::Hashable
|
3476
|
-
|
3477
|
-
# The set of permissions to check for the `resource`. Permissions with wildcards
|
3478
|
-
# (such as `*` or `storage.*`) are not allowed. For more information see [IAM
|
3479
|
-
# Overview](https://cloud.google.com/iam/docs/overview#permissions).
|
3480
|
-
# Corresponds to the JSON property `permissions`
|
3481
|
-
# @return [Array<String>]
|
3482
|
-
attr_accessor :permissions
|
3483
|
-
|
3484
|
-
def initialize(**args)
|
3485
|
-
update!(**args)
|
3486
|
-
end
|
3487
|
-
|
3488
|
-
# Update properties of this object
|
3489
|
-
def update!(**args)
|
3490
|
-
@permissions = args[:permissions] if args.key?(:permissions)
|
3491
|
-
end
|
3492
|
-
end
|
3493
|
-
|
3494
|
-
# Response message for `TestIamPermissions` method.
|
3495
|
-
class TestIamPermissionsResponse
|
3496
|
-
include Google::Apis::Core::Hashable
|
3497
|
-
|
3498
|
-
# A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
|
3499
|
-
# Corresponds to the JSON property `permissions`
|
3500
|
-
# @return [Array<String>]
|
3501
|
-
attr_accessor :permissions
|
3502
|
-
|
3503
|
-
def initialize(**args)
|
3504
|
-
update!(**args)
|
3505
|
-
end
|
3506
|
-
|
3507
|
-
# Update properties of this object
|
3508
|
-
def update!(**args)
|
3509
|
-
@permissions = args[:permissions] if args.key?(:permissions)
|
3510
|
-
end
|
3511
|
-
end
|
3512
|
-
|
3513
3527
|
# TlsRoute defines how traffic should be routed based on SNI and other matching
|
3514
3528
|
# L3 attributes.
|
3515
3529
|
class TlsRoute
|
@@ -3725,6 +3739,333 @@ module Google
|
|
3725
3739
|
@ports = args[:ports] if args.key?(:ports)
|
3726
3740
|
end
|
3727
3741
|
end
|
3742
|
+
|
3743
|
+
# `WasmPlugin` is a resource representing a service executing a customer-
|
3744
|
+
# provided Wasm module.
|
3745
|
+
class WasmPlugin
|
3746
|
+
include Google::Apis::Core::Hashable
|
3747
|
+
|
3748
|
+
# Output only. The timestamp when the resource was created.
|
3749
|
+
# Corresponds to the JSON property `createTime`
|
3750
|
+
# @return [String]
|
3751
|
+
attr_accessor :create_time
|
3752
|
+
|
3753
|
+
# Optional. A human-readable description of the resource.
|
3754
|
+
# Corresponds to the JSON property `description`
|
3755
|
+
# @return [String]
|
3756
|
+
attr_accessor :description
|
3757
|
+
|
3758
|
+
# Optional. Set of labels associated with the `WasmPlugin` resource. The format
|
3759
|
+
# must comply with [the following requirements](/compute/docs/labeling-resources#
|
3760
|
+
# requirements).
|
3761
|
+
# Corresponds to the JSON property `labels`
|
3762
|
+
# @return [Hash<String,String>]
|
3763
|
+
attr_accessor :labels
|
3764
|
+
|
3765
|
+
# Specifies the logging options for the activity performed by this plugin. If
|
3766
|
+
# logging is enabled, plugin logs are exported to Cloud Logging.
|
3767
|
+
# Corresponds to the JSON property `logConfig`
|
3768
|
+
# @return [Google::Apis::NetworkservicesV1beta1::WasmPluginLogConfig]
|
3769
|
+
attr_accessor :log_config
|
3770
|
+
|
3771
|
+
# Optional. The ID of the `WasmPluginVersion` resource that is the currently
|
3772
|
+
# serving one. The version referred to must be a child of this `WasmPlugin`
|
3773
|
+
# resource.
|
3774
|
+
# Corresponds to the JSON property `mainVersionId`
|
3775
|
+
# @return [String]
|
3776
|
+
attr_accessor :main_version_id
|
3777
|
+
|
3778
|
+
# Identifier. Name of the `WasmPlugin` resource in the following format: `
|
3779
|
+
# projects/`project`/locations/`location`/wasmPlugins/`wasm_plugin``.
|
3780
|
+
# Corresponds to the JSON property `name`
|
3781
|
+
# @return [String]
|
3782
|
+
attr_accessor :name
|
3783
|
+
|
3784
|
+
# Output only. The timestamp when the resource was updated.
|
3785
|
+
# Corresponds to the JSON property `updateTime`
|
3786
|
+
# @return [String]
|
3787
|
+
attr_accessor :update_time
|
3788
|
+
|
3789
|
+
# Output only. List of all [extensions](https://cloud.google.com/service-
|
3790
|
+
# extensions/docs/overview) that use this `WasmPlugin` resource.
|
3791
|
+
# Corresponds to the JSON property `usedBy`
|
3792
|
+
# @return [Array<Google::Apis::NetworkservicesV1beta1::WasmPluginUsedBy>]
|
3793
|
+
attr_accessor :used_by
|
3794
|
+
|
3795
|
+
# Optional. All versions of this `WasmPlugin` resource in the key-value format.
|
3796
|
+
# The key is the resource ID, and the value is the `VersionDetails` object. Lets
|
3797
|
+
# you create or update a `WasmPlugin` resource and its versions in a single
|
3798
|
+
# request. When the `main_version_id` field is not empty, it must point to one
|
3799
|
+
# of the `VersionDetails` objects in the map. If provided in a `PATCH` request,
|
3800
|
+
# the new versions replace the previous set. Any version omitted from the `
|
3801
|
+
# versions` field is removed. Because the `WasmPluginVersion` resource is
|
3802
|
+
# immutable, if a `WasmPluginVersion` resource with the same name already exists
|
3803
|
+
# and differs, the request fails. Note: In a `GET` request, this field is
|
3804
|
+
# populated only if the field `GetWasmPluginRequest.view` is set to `
|
3805
|
+
# WASM_PLUGIN_VIEW_FULL`.
|
3806
|
+
# Corresponds to the JSON property `versions`
|
3807
|
+
# @return [Hash<String,Google::Apis::NetworkservicesV1beta1::WasmPluginVersionDetails>]
|
3808
|
+
attr_accessor :versions
|
3809
|
+
|
3810
|
+
def initialize(**args)
|
3811
|
+
update!(**args)
|
3812
|
+
end
|
3813
|
+
|
3814
|
+
# Update properties of this object
|
3815
|
+
def update!(**args)
|
3816
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
3817
|
+
@description = args[:description] if args.key?(:description)
|
3818
|
+
@labels = args[:labels] if args.key?(:labels)
|
3819
|
+
@log_config = args[:log_config] if args.key?(:log_config)
|
3820
|
+
@main_version_id = args[:main_version_id] if args.key?(:main_version_id)
|
3821
|
+
@name = args[:name] if args.key?(:name)
|
3822
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
3823
|
+
@used_by = args[:used_by] if args.key?(:used_by)
|
3824
|
+
@versions = args[:versions] if args.key?(:versions)
|
3825
|
+
end
|
3826
|
+
end
|
3827
|
+
|
3828
|
+
# Specifies the logging options for the activity performed by this plugin. If
|
3829
|
+
# logging is enabled, plugin logs are exported to Cloud Logging.
|
3830
|
+
class WasmPluginLogConfig
|
3831
|
+
include Google::Apis::Core::Hashable
|
3832
|
+
|
3833
|
+
# Optional. Specifies whether to enable logging for activity by this plugin.
|
3834
|
+
# Defaults to `false`.
|
3835
|
+
# Corresponds to the JSON property `enable`
|
3836
|
+
# @return [Boolean]
|
3837
|
+
attr_accessor :enable
|
3838
|
+
alias_method :enable?, :enable
|
3839
|
+
|
3840
|
+
# Non-empty default. Specificies the lowest level of the plugin logs that are
|
3841
|
+
# exported to Cloud Logging. This setting relates to the logs generated by using
|
3842
|
+
# logging statements in your Wasm code. This field is can be set only if logging
|
3843
|
+
# is enabled for the plugin. If the field is not provided when logging is
|
3844
|
+
# enabled, it is set to `INFO` by default.
|
3845
|
+
# Corresponds to the JSON property `minLogLevel`
|
3846
|
+
# @return [String]
|
3847
|
+
attr_accessor :min_log_level
|
3848
|
+
|
3849
|
+
# Non-empty default. Configures the sampling rate of activity logs, where `1.0`
|
3850
|
+
# means all logged activity is reported and `0.0` means no activity is reported.
|
3851
|
+
# A floating point value between `0.0` and `1.0` indicates that a percentage of
|
3852
|
+
# log messages is stored. The default value when logging is enabled is `1.0`.
|
3853
|
+
# The value of the field must be between `0` and `1` (inclusive). This field can
|
3854
|
+
# be specified only if logging is enabled for this plugin.
|
3855
|
+
# Corresponds to the JSON property `sampleRate`
|
3856
|
+
# @return [Float]
|
3857
|
+
attr_accessor :sample_rate
|
3858
|
+
|
3859
|
+
def initialize(**args)
|
3860
|
+
update!(**args)
|
3861
|
+
end
|
3862
|
+
|
3863
|
+
# Update properties of this object
|
3864
|
+
def update!(**args)
|
3865
|
+
@enable = args[:enable] if args.key?(:enable)
|
3866
|
+
@min_log_level = args[:min_log_level] if args.key?(:min_log_level)
|
3867
|
+
@sample_rate = args[:sample_rate] if args.key?(:sample_rate)
|
3868
|
+
end
|
3869
|
+
end
|
3870
|
+
|
3871
|
+
# Defines a resource that uses the `WasmPlugin` resource.
|
3872
|
+
class WasmPluginUsedBy
|
3873
|
+
include Google::Apis::Core::Hashable
|
3874
|
+
|
3875
|
+
# Output only. Full name of the resource https://google.aip.dev/122#full-
|
3876
|
+
# resource-names, for example `//networkservices.googleapis.com/projects/`
|
3877
|
+
# project`/locations/`location`/lbRouteExtensions/`extension``
|
3878
|
+
# Corresponds to the JSON property `name`
|
3879
|
+
# @return [String]
|
3880
|
+
attr_accessor :name
|
3881
|
+
|
3882
|
+
def initialize(**args)
|
3883
|
+
update!(**args)
|
3884
|
+
end
|
3885
|
+
|
3886
|
+
# Update properties of this object
|
3887
|
+
def update!(**args)
|
3888
|
+
@name = args[:name] if args.key?(:name)
|
3889
|
+
end
|
3890
|
+
end
|
3891
|
+
|
3892
|
+
# A single immutable version of a `WasmPlugin` resource. Defines the Wasm module
|
3893
|
+
# used and optionally its runtime config.
|
3894
|
+
class WasmPluginVersion
|
3895
|
+
include Google::Apis::Core::Hashable
|
3896
|
+
|
3897
|
+
# Output only. The timestamp when the resource was created.
|
3898
|
+
# Corresponds to the JSON property `createTime`
|
3899
|
+
# @return [String]
|
3900
|
+
attr_accessor :create_time
|
3901
|
+
|
3902
|
+
# Optional. A human-readable description of the resource.
|
3903
|
+
# Corresponds to the JSON property `description`
|
3904
|
+
# @return [String]
|
3905
|
+
attr_accessor :description
|
3906
|
+
|
3907
|
+
# Output only. The resolved digest for the image specified in the `image` field.
|
3908
|
+
# The digest is resolved during the creation of `WasmPluginVersion` resource.
|
3909
|
+
# This field holds the digest value, regardless of whether a tag or digest was
|
3910
|
+
# originally specified in the `image` field.
|
3911
|
+
# Corresponds to the JSON property `imageDigest`
|
3912
|
+
# @return [String]
|
3913
|
+
attr_accessor :image_digest
|
3914
|
+
|
3915
|
+
# Optional. URI of the container image containing the plugin, stored in the
|
3916
|
+
# Artifact Registry. When a new `WasmPluginVersion` resource is created, the
|
3917
|
+
# digest of the container image is saved in the `image_digest` field. When
|
3918
|
+
# downloading an image, the digest value is used instead of an image tag.
|
3919
|
+
# Corresponds to the JSON property `imageUri`
|
3920
|
+
# @return [String]
|
3921
|
+
attr_accessor :image_uri
|
3922
|
+
|
3923
|
+
# Optional. Set of labels associated with the `WasmPluginVersion` resource.
|
3924
|
+
# Corresponds to the JSON property `labels`
|
3925
|
+
# @return [Hash<String,String>]
|
3926
|
+
attr_accessor :labels
|
3927
|
+
|
3928
|
+
# Identifier. Name of the `WasmPluginVersion` resource in the following format: `
|
3929
|
+
# projects/`project`/locations/`location`/wasmPlugins/`wasm_plugin`/ versions/`
|
3930
|
+
# wasm_plugin_version``.
|
3931
|
+
# Corresponds to the JSON property `name`
|
3932
|
+
# @return [String]
|
3933
|
+
attr_accessor :name
|
3934
|
+
|
3935
|
+
# Configuration for the plugin. The configuration is provided to the plugin at
|
3936
|
+
# runtime through the `ON_CONFIGURE` callback. When a new `WasmPluginVersion`
|
3937
|
+
# resource is created, the digest of the contents is saved in the `
|
3938
|
+
# plugin_config_digest` field.
|
3939
|
+
# Corresponds to the JSON property `pluginConfigData`
|
3940
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
3941
|
+
# @return [String]
|
3942
|
+
attr_accessor :plugin_config_data
|
3943
|
+
|
3944
|
+
# Output only. This field holds the digest (usually checksum) value for the
|
3945
|
+
# plugin configuration. The value is calculated based on the contents of `
|
3946
|
+
# plugin_config_data` or the container image defined by the `plugin_config_uri`
|
3947
|
+
# field.
|
3948
|
+
# Corresponds to the JSON property `pluginConfigDigest`
|
3949
|
+
# @return [String]
|
3950
|
+
attr_accessor :plugin_config_digest
|
3951
|
+
|
3952
|
+
# URI of the plugin configuration stored in the Artifact Registry. The
|
3953
|
+
# configuration is provided to the plugin at runtime through the `ON_CONFIGURE`
|
3954
|
+
# callback. The container image must contain only a single file with the name `
|
3955
|
+
# plugin.config`. When a new `WasmPluginVersion` resource is created, the digest
|
3956
|
+
# of the container image is saved in the `plugin_config_digest` field.
|
3957
|
+
# Corresponds to the JSON property `pluginConfigUri`
|
3958
|
+
# @return [String]
|
3959
|
+
attr_accessor :plugin_config_uri
|
3960
|
+
|
3961
|
+
# Output only. The timestamp when the resource was updated.
|
3962
|
+
# Corresponds to the JSON property `updateTime`
|
3963
|
+
# @return [String]
|
3964
|
+
attr_accessor :update_time
|
3965
|
+
|
3966
|
+
def initialize(**args)
|
3967
|
+
update!(**args)
|
3968
|
+
end
|
3969
|
+
|
3970
|
+
# Update properties of this object
|
3971
|
+
def update!(**args)
|
3972
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
3973
|
+
@description = args[:description] if args.key?(:description)
|
3974
|
+
@image_digest = args[:image_digest] if args.key?(:image_digest)
|
3975
|
+
@image_uri = args[:image_uri] if args.key?(:image_uri)
|
3976
|
+
@labels = args[:labels] if args.key?(:labels)
|
3977
|
+
@name = args[:name] if args.key?(:name)
|
3978
|
+
@plugin_config_data = args[:plugin_config_data] if args.key?(:plugin_config_data)
|
3979
|
+
@plugin_config_digest = args[:plugin_config_digest] if args.key?(:plugin_config_digest)
|
3980
|
+
@plugin_config_uri = args[:plugin_config_uri] if args.key?(:plugin_config_uri)
|
3981
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
3982
|
+
end
|
3983
|
+
end
|
3984
|
+
|
3985
|
+
# Details of a `WasmPluginVersion` resource to be inlined in the `WasmPlugin`
|
3986
|
+
# resource.
|
3987
|
+
class WasmPluginVersionDetails
|
3988
|
+
include Google::Apis::Core::Hashable
|
3989
|
+
|
3990
|
+
# Output only. The timestamp when the resource was created.
|
3991
|
+
# Corresponds to the JSON property `createTime`
|
3992
|
+
# @return [String]
|
3993
|
+
attr_accessor :create_time
|
3994
|
+
|
3995
|
+
# Optional. A human-readable description of the resource.
|
3996
|
+
# Corresponds to the JSON property `description`
|
3997
|
+
# @return [String]
|
3998
|
+
attr_accessor :description
|
3999
|
+
|
4000
|
+
# Output only. The resolved digest for the image specified in `image`. The
|
4001
|
+
# digest is resolved during the creation of a `WasmPluginVersion` resource. This
|
4002
|
+
# field holds the digest value regardless of whether a tag or digest was
|
4003
|
+
# originally specified in the `image` field.
|
4004
|
+
# Corresponds to the JSON property `imageDigest`
|
4005
|
+
# @return [String]
|
4006
|
+
attr_accessor :image_digest
|
4007
|
+
|
4008
|
+
# Optional. URI of the container image containing the Wasm module, stored in the
|
4009
|
+
# Artifact Registry. The container image must contain only a single file with
|
4010
|
+
# the name `plugin.wasm`. When a new `WasmPluginVersion` resource is created,
|
4011
|
+
# the URI gets resolved to an image digest and saved in the `image_digest` field.
|
4012
|
+
# Corresponds to the JSON property `imageUri`
|
4013
|
+
# @return [String]
|
4014
|
+
attr_accessor :image_uri
|
4015
|
+
|
4016
|
+
# Optional. Set of labels associated with the `WasmPluginVersion` resource.
|
4017
|
+
# Corresponds to the JSON property `labels`
|
4018
|
+
# @return [Hash<String,String>]
|
4019
|
+
attr_accessor :labels
|
4020
|
+
|
4021
|
+
# Configuration for the plugin. The configuration is provided to the plugin at
|
4022
|
+
# runtime through the `ON_CONFIGURE` callback. When a new `WasmPluginVersion`
|
4023
|
+
# version is created, the digest of the contents is saved in the `
|
4024
|
+
# plugin_config_digest` field.
|
4025
|
+
# Corresponds to the JSON property `pluginConfigData`
|
4026
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
4027
|
+
# @return [String]
|
4028
|
+
attr_accessor :plugin_config_data
|
4029
|
+
|
4030
|
+
# Output only. This field holds the digest (usually checksum) value for the
|
4031
|
+
# plugin configuration. The value is calculated based on the contents of the `
|
4032
|
+
# plugin_config_data` field or the container image defined by the `
|
4033
|
+
# plugin_config_uri` field.
|
4034
|
+
# Corresponds to the JSON property `pluginConfigDigest`
|
4035
|
+
# @return [String]
|
4036
|
+
attr_accessor :plugin_config_digest
|
4037
|
+
|
4038
|
+
# URI of the plugin configuration stored in the Artifact Registry. The
|
4039
|
+
# configuration is provided to the plugin at runtime through the `ON_CONFIGURE`
|
4040
|
+
# callback. The container image must contain only a single file with the name `
|
4041
|
+
# plugin.config`. When a new `WasmPluginVersion` resource is created, the digest
|
4042
|
+
# of the container image is saved in the `plugin_config_digest` field.
|
4043
|
+
# Corresponds to the JSON property `pluginConfigUri`
|
4044
|
+
# @return [String]
|
4045
|
+
attr_accessor :plugin_config_uri
|
4046
|
+
|
4047
|
+
# Output only. The timestamp when the resource was updated.
|
4048
|
+
# Corresponds to the JSON property `updateTime`
|
4049
|
+
# @return [String]
|
4050
|
+
attr_accessor :update_time
|
4051
|
+
|
4052
|
+
def initialize(**args)
|
4053
|
+
update!(**args)
|
4054
|
+
end
|
4055
|
+
|
4056
|
+
# Update properties of this object
|
4057
|
+
def update!(**args)
|
4058
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
4059
|
+
@description = args[:description] if args.key?(:description)
|
4060
|
+
@image_digest = args[:image_digest] if args.key?(:image_digest)
|
4061
|
+
@image_uri = args[:image_uri] if args.key?(:image_uri)
|
4062
|
+
@labels = args[:labels] if args.key?(:labels)
|
4063
|
+
@plugin_config_data = args[:plugin_config_data] if args.key?(:plugin_config_data)
|
4064
|
+
@plugin_config_digest = args[:plugin_config_digest] if args.key?(:plugin_config_digest)
|
4065
|
+
@plugin_config_uri = args[:plugin_config_uri] if args.key?(:plugin_config_uri)
|
4066
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
4067
|
+
end
|
4068
|
+
end
|
3728
4069
|
end
|
3729
4070
|
end
|
3730
4071
|
end
|