google-apis-networkservices_v1beta1 0.44.0 → 0.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|