google-api-client 0.13.6 → 0.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +56 -0
  3. data/generated/google/apis/adsense_v1_4.rb +1 -1
  4. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  5. data/generated/google/apis/androiddeviceprovisioning_v1.rb +3 -3
  6. data/generated/google/apis/androiddeviceprovisioning_v1/service.rb +3 -3
  7. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  8. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  9. data/generated/google/apis/androidmanagement_v1/classes.rb +8 -0
  10. data/generated/google/apis/androidmanagement_v1/representations.rb +1 -0
  11. data/generated/google/apis/androidpublisher_v1.rb +1 -1
  12. data/generated/google/apis/androidpublisher_v1_1.rb +1 -1
  13. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  14. data/generated/google/apis/androidpublisher_v2/classes.rb +1 -0
  15. data/generated/google/apis/androidpublisher_v2/service.rb +1 -1
  16. data/generated/google/apis/appstate_v1.rb +1 -1
  17. data/generated/google/apis/bigquery_v2.rb +1 -1
  18. data/generated/google/apis/bigquery_v2/classes.rb +6 -0
  19. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  20. data/generated/google/apis/bigquerydatatransfer_v1.rb +2 -2
  21. data/generated/google/apis/bigquerydatatransfer_v1/classes.rb +19 -69
  22. data/generated/google/apis/bigquerydatatransfer_v1/representations.rb +3 -41
  23. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +17 -149
  24. data/generated/google/apis/calendar_v3.rb +1 -1
  25. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  26. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  27. data/generated/google/apis/cloudfunctions_v1/classes.rb +7 -0
  28. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  29. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  30. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +30 -0
  31. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +4 -0
  32. data/generated/google/apis/{toolresults_v1beta3firstparty.rb → cloudtasks_v2beta2.rb} +13 -9
  33. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +1709 -0
  34. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +585 -0
  35. data/generated/google/apis/cloudtasks_v2beta2/service.rb +1016 -0
  36. data/generated/google/apis/cloudtrace_v2.rb +1 -4
  37. data/generated/google/apis/cloudtrace_v2/classes.rb +0 -78
  38. data/generated/google/apis/cloudtrace_v2/representations.rb +0 -43
  39. data/generated/google/apis/cloudtrace_v2/service.rb +0 -101
  40. data/generated/google/apis/compute_alpha.rb +1 -1
  41. data/generated/google/apis/compute_alpha/classes.rb +833 -120
  42. data/generated/google/apis/compute_alpha/representations.rb +263 -26
  43. data/generated/google/apis/compute_alpha/service.rb +795 -107
  44. data/generated/google/apis/compute_beta.rb +1 -1
  45. data/generated/google/apis/compute_beta/classes.rb +5329 -524
  46. data/generated/google/apis/compute_beta/representations.rb +2241 -36
  47. data/generated/google/apis/compute_beta/service.rb +5 -5
  48. data/generated/google/apis/compute_v1.rb +1 -1
  49. data/generated/google/apis/compute_v1/classes.rb +4 -5
  50. data/generated/google/apis/container_v1.rb +1 -1
  51. data/generated/google/apis/container_v1/classes.rb +12 -0
  52. data/generated/google/apis/container_v1/representations.rb +1 -0
  53. data/generated/google/apis/container_v1beta1.rb +1 -1
  54. data/generated/google/apis/container_v1beta1/classes.rb +54 -0
  55. data/generated/google/apis/container_v1beta1/representations.rb +18 -0
  56. data/generated/google/apis/content_v2.rb +1 -1
  57. data/generated/google/apis/content_v2sandbox.rb +1 -1
  58. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  59. data/generated/google/apis/dataflow_v1b3/classes.rb +6 -39
  60. data/generated/google/apis/dataflow_v1b3/representations.rb +1 -16
  61. data/generated/google/apis/deploymentmanager_alpha.rb +1 -1
  62. data/generated/google/apis/deploymentmanager_alpha/classes.rb +71 -3
  63. data/generated/google/apis/deploymentmanager_alpha/representations.rb +32 -0
  64. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  65. data/generated/google/apis/deploymentmanager_v2/service.rb +1 -1
  66. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  67. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +39 -3
  68. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +16 -0
  69. data/generated/google/apis/dlp_v2beta1.rb +1 -1
  70. data/generated/google/apis/dlp_v2beta1/classes.rb +1605 -49
  71. data/generated/google/apis/dlp_v2beta1/representations.rb +832 -30
  72. data/generated/google/apis/dlp_v2beta1/service.rb +62 -0
  73. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  74. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  75. data/generated/google/apis/games_management_v1management.rb +1 -1
  76. data/generated/google/apis/games_v1.rb +1 -1
  77. data/generated/google/apis/gmail_v1.rb +1 -1
  78. data/generated/google/apis/gmail_v1/classes.rb +0 -36
  79. data/generated/google/apis/gmail_v1/representations.rb +0 -16
  80. data/generated/google/apis/language_v1.rb +1 -1
  81. data/generated/google/apis/language_v1/classes.rb +74 -0
  82. data/generated/google/apis/language_v1/representations.rb +35 -0
  83. data/generated/google/apis/language_v1/service.rb +31 -0
  84. data/generated/google/apis/language_v1beta1.rb +1 -1
  85. data/generated/google/apis/language_v1beta2.rb +1 -1
  86. data/generated/google/apis/ml_v1.rb +1 -1
  87. data/generated/google/apis/ml_v1/classes.rb +3 -0
  88. data/generated/google/apis/people_v1.rb +1 -1
  89. data/generated/google/apis/people_v1/classes.rb +8 -0
  90. data/generated/google/apis/people_v1/representations.rb +1 -0
  91. data/generated/google/apis/plus_domains_v1/service.rb +1 -1
  92. data/generated/google/apis/plus_v1/service.rb +1 -1
  93. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  94. data/generated/google/apis/servicecontrol_v1/classes.rb +35 -6
  95. data/generated/google/apis/servicecontrol_v1/representations.rb +16 -1
  96. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  97. data/generated/google/apis/servicemanagement_v1/classes.rb +1 -1
  98. data/generated/google/apis/serviceuser_v1.rb +1 -1
  99. data/generated/google/apis/serviceuser_v1/classes.rb +1 -1
  100. data/generated/google/apis/sourcerepo_v1.rb +4 -1
  101. data/generated/google/apis/sourcerepo_v1/classes.rb +45 -204
  102. data/generated/google/apis/sourcerepo_v1/representations.rb +10 -90
  103. data/generated/google/apis/storage_v1beta1.rb +1 -1
  104. data/generated/google/apis/storage_v1beta1/service.rb +1 -1
  105. data/generated/google/apis/storage_v1beta2.rb +1 -1
  106. data/generated/google/apis/storage_v1beta2/service.rb +1 -1
  107. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  108. data/generated/google/apis/streetviewpublish_v1/classes.rb +5 -3
  109. data/generated/google/apis/streetviewpublish_v1/service.rb +6 -4
  110. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  111. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  112. data/generated/google/apis/youtube_analytics_v1beta1.rb +1 -1
  113. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  114. data/generated/google/apis/youtube_v3.rb +1 -1
  115. data/generated/google/apis/youtube_v3/classes.rb +22 -85
  116. data/generated/google/apis/youtube_v3/representations.rb +3 -46
  117. data/generated/google/apis/youtube_v3/service.rb +11 -1
  118. data/lib/google/apis/version.rb +1 -1
  119. metadata +6 -6
  120. data/generated/google/apis/toolresults_v1beta3firstparty/classes.rb +0 -2630
  121. data/generated/google/apis/toolresults_v1beta3firstparty/representations.rb +0 -886
  122. data/generated/google/apis/toolresults_v1beta3firstparty/service.rb +0 -1336
@@ -28,16 +28,13 @@ module Google
28
28
  # @see https://cloud.google.com/trace
29
29
  module CloudtraceV2
30
30
  VERSION = 'V2'
31
- REVISION = '20170829'
31
+ REVISION = '20170905'
32
32
 
33
33
  # View and manage your data across Google Cloud Platform services
34
34
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
35
35
 
36
36
  # Write Trace data for a project or application
37
37
  AUTH_TRACE_APPEND = 'https://www.googleapis.com/auth/trace.append'
38
-
39
- # Read Trace data for a project or application
40
- AUTH_TRACE_READONLY = 'https://www.googleapis.com/auth/trace.readonly'
41
38
  end
42
39
  end
43
40
  end
@@ -217,60 +217,6 @@ module Google
217
217
  end
218
218
  end
219
219
 
220
- # The response message for the `ListSpans` method.
221
- class ListSpansResponse
222
- include Google::Apis::Core::Hashable
223
-
224
- # If defined, indicates that there might be more spans that match the
225
- # request. Pass this as the value of `pageToken` in a subsequent request to
226
- # retrieve additional spans.
227
- # Corresponds to the JSON property `nextPageToken`
228
- # @return [String]
229
- attr_accessor :next_page_token
230
-
231
- # The requested spans, if there are any in the specified trace.
232
- # Corresponds to the JSON property `spans`
233
- # @return [Array<Google::Apis::CloudtraceV2::Span>]
234
- attr_accessor :spans
235
-
236
- def initialize(**args)
237
- update!(**args)
238
- end
239
-
240
- # Update properties of this object
241
- def update!(**args)
242
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
243
- @spans = args[:spans] if args.key?(:spans)
244
- end
245
- end
246
-
247
- # The response message for the `ListTraces` method.
248
- class ListTracesResponse
249
- include Google::Apis::Core::Hashable
250
-
251
- # If there might be more results than those appearing in this response, then
252
- # `next_page_token` is included. To get the next set of results, call this
253
- # method again using the value of `next_page_token` as `page_token`.
254
- # Corresponds to the JSON property `nextPageToken`
255
- # @return [String]
256
- attr_accessor :next_page_token
257
-
258
- # List of trace records returned.
259
- # Corresponds to the JSON property `traces`
260
- # @return [Array<Google::Apis::CloudtraceV2::Trace>]
261
- attr_accessor :traces
262
-
263
- def initialize(**args)
264
- update!(**args)
265
- end
266
-
267
- # Update properties of this object
268
- def update!(**args)
269
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
270
- @traces = args[:traces] if args.key?(:traces)
271
- end
272
- end
273
-
274
220
  # Binary module.
275
221
  class Module
276
222
  include Google::Apis::Core::Hashable
@@ -744,30 +690,6 @@ module Google
744
690
  end
745
691
  end
746
692
 
747
- # A trace describes how long it takes for an application to perform some
748
- # operations. It consists of a set of spans, each representing
749
- # an operation and including time information and operation details.
750
- class Trace
751
- include Google::Apis::Core::Hashable
752
-
753
- # The resource name of the trace in the following format:
754
- # projects/[PROJECT_ID]/traces/TRACE_ID is a unique identifier for a trace
755
- # within a project.
756
- # The ID is assigned when the trace is created.
757
- # Corresponds to the JSON property `name`
758
- # @return [String]
759
- attr_accessor :name
760
-
761
- def initialize(**args)
762
- update!(**args)
763
- end
764
-
765
- # Update properties of this object
766
- def update!(**args)
767
- @name = args[:name] if args.key?(:name)
768
- end
769
- end
770
-
771
693
  # Represents a string that might be shortened to a specified length.
772
694
  class TruncatableString
773
695
  include Google::Apis::Core::Hashable
@@ -64,18 +64,6 @@ module Google
64
64
  include Google::Apis::Core::JsonObjectSupport
65
65
  end
66
66
 
67
- class ListSpansResponse
68
- class Representation < Google::Apis::Core::JsonRepresentation; end
69
-
70
- include Google::Apis::Core::JsonObjectSupport
71
- end
72
-
73
- class ListTracesResponse
74
- class Representation < Google::Apis::Core::JsonRepresentation; end
75
-
76
- include Google::Apis::Core::JsonObjectSupport
77
- end
78
-
79
67
  class Module
80
68
  class Representation < Google::Apis::Core::JsonRepresentation; end
81
69
 
@@ -130,12 +118,6 @@ module Google
130
118
  include Google::Apis::Core::JsonObjectSupport
131
119
  end
132
120
 
133
- class Trace
134
- class Representation < Google::Apis::Core::JsonRepresentation; end
135
-
136
- include Google::Apis::Core::JsonObjectSupport
137
- end
138
-
139
121
  class TruncatableString
140
122
  class Representation < Google::Apis::Core::JsonRepresentation; end
141
123
 
@@ -205,24 +187,6 @@ module Google
205
187
  end
206
188
  end
207
189
 
208
- class ListSpansResponse
209
- # @private
210
- class Representation < Google::Apis::Core::JsonRepresentation
211
- property :next_page_token, as: 'nextPageToken'
212
- collection :spans, as: 'spans', class: Google::Apis::CloudtraceV2::Span, decorator: Google::Apis::CloudtraceV2::Span::Representation
213
-
214
- end
215
- end
216
-
217
- class ListTracesResponse
218
- # @private
219
- class Representation < Google::Apis::Core::JsonRepresentation
220
- property :next_page_token, as: 'nextPageToken'
221
- collection :traces, as: 'traces', class: Google::Apis::CloudtraceV2::Trace, decorator: Google::Apis::CloudtraceV2::Trace::Representation
222
-
223
- end
224
- end
225
-
226
190
  class Module
227
191
  # @private
228
192
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -335,13 +299,6 @@ module Google
335
299
  end
336
300
  end
337
301
 
338
- class Trace
339
- # @private
340
- class Representation < Google::Apis::Core::JsonRepresentation
341
- property :name, as: 'name'
342
- end
343
- end
344
-
345
302
  class TruncatableString
346
303
  # @private
347
304
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -88,107 +88,6 @@ module Google
88
88
  execute_or_queue_command(command, &block)
89
89
  end
90
90
 
91
- # Returns of a list of traces that match the specified filter conditions.
92
- # @param [String] parent
93
- # Required. The project where the trace data is stored. The format
94
- # is `projects/PROJECT_ID`.
95
- # @param [String] end_time
96
- # Optional. Do not return traces whose start time is later than this time.
97
- # @param [String] filter
98
- # Opional. Return only traces that match this
99
- # [trace filter](/trace/docs/trace-filters). Example:
100
- # "label:/http/url root:/_ah/background my_label:17"
101
- # @param [String] order_by
102
- # Optional. A single field used to sort the returned traces.
103
- # Only the following field names can be used:
104
- # * `trace_id`: the trace's ID field
105
- # * `name`: the root span's resource name
106
- # * `duration`: the difference between the root span's start time and end time
107
- # * `start`: the start time of the root span
108
- # Sorting is in ascending order unless `desc` is appended to the sort field name.
109
- # Example: `"name desc"`).
110
- # @param [Fixnum] page_size
111
- # Optional. The maximum number of results to return from this request.
112
- # Non-positive values are ignored. The presence of `next_page_token` in the
113
- # response indicates that more results might be available, even if fewer than
114
- # the maximum number of results is returned by this request.
115
- # @param [String] page_token
116
- # Optional. If present, then retrieve the next batch of results from the
117
- # preceding call to this method. `page_token` must be the value of
118
- # `next_page_token` from the previous response. The values of other method
119
- # parameters should be identical to those in the previous call.
120
- # @param [String] start_time
121
- # Optional. Do not return traces whose end time is earlier than this time.
122
- # @param [String] fields
123
- # Selector specifying which fields to include in a partial response.
124
- # @param [String] quota_user
125
- # Available to use for quota purposes for server-side applications. Can be any
126
- # arbitrary string assigned to a user, but should not exceed 40 characters.
127
- # @param [Google::Apis::RequestOptions] options
128
- # Request-specific options
129
- #
130
- # @yield [result, err] Result & error if block supplied
131
- # @yieldparam result [Google::Apis::CloudtraceV2::ListTracesResponse] parsed result object
132
- # @yieldparam err [StandardError] error object if request failed
133
- #
134
- # @return [Google::Apis::CloudtraceV2::ListTracesResponse]
135
- #
136
- # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
137
- # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
138
- # @raise [Google::Apis::AuthorizationError] Authorization is required
139
- def list_project_traces(parent, end_time: nil, filter: nil, order_by: nil, page_size: nil, page_token: nil, start_time: nil, fields: nil, quota_user: nil, options: nil, &block)
140
- command = make_simple_command(:get, 'v2/{+parent}/traces', options)
141
- command.response_representation = Google::Apis::CloudtraceV2::ListTracesResponse::Representation
142
- command.response_class = Google::Apis::CloudtraceV2::ListTracesResponse
143
- command.params['parent'] = parent unless parent.nil?
144
- command.query['endTime'] = end_time unless end_time.nil?
145
- command.query['filter'] = filter unless filter.nil?
146
- command.query['orderBy'] = order_by unless order_by.nil?
147
- command.query['pageSize'] = page_size unless page_size.nil?
148
- command.query['pageToken'] = page_token unless page_token.nil?
149
- command.query['startTime'] = start_time unless start_time.nil?
150
- command.query['fields'] = fields unless fields.nil?
151
- command.query['quotaUser'] = quota_user unless quota_user.nil?
152
- execute_or_queue_command(command, &block)
153
- end
154
-
155
- # Returns a list of spans within a trace.
156
- # @param [String] parent
157
- # Required: The resource name of the trace containing the spans to list.
158
- # The format is `projects/PROJECT_ID/traces/TRACE_ID`.
159
- # @param [String] page_token
160
- # Optional. If present, then retrieve the next batch of results from the
161
- # preceding call to this method. `page_token` must be the value of
162
- # `next_page_token` from the previous response. The values of other method
163
- # parameters should be identical to those in the previous call.
164
- # @param [String] fields
165
- # Selector specifying which fields to include in a partial response.
166
- # @param [String] quota_user
167
- # Available to use for quota purposes for server-side applications. Can be any
168
- # arbitrary string assigned to a user, but should not exceed 40 characters.
169
- # @param [Google::Apis::RequestOptions] options
170
- # Request-specific options
171
- #
172
- # @yield [result, err] Result & error if block supplied
173
- # @yieldparam result [Google::Apis::CloudtraceV2::ListSpansResponse] parsed result object
174
- # @yieldparam err [StandardError] error object if request failed
175
- #
176
- # @return [Google::Apis::CloudtraceV2::ListSpansResponse]
177
- #
178
- # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
179
- # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
180
- # @raise [Google::Apis::AuthorizationError] Authorization is required
181
- def list_project_trace_spans(parent, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
182
- command = make_simple_command(:get, 'v2/{+parent}:listSpans', options)
183
- command.response_representation = Google::Apis::CloudtraceV2::ListSpansResponse::Representation
184
- command.response_class = Google::Apis::CloudtraceV2::ListSpansResponse
185
- command.params['parent'] = parent unless parent.nil?
186
- command.query['pageToken'] = page_token unless page_token.nil?
187
- command.query['fields'] = fields unless fields.nil?
188
- command.query['quotaUser'] = quota_user unless quota_user.nil?
189
- execute_or_queue_command(command, &block)
190
- end
191
-
192
91
  # Creates a new Span.
193
92
  # @param [String] name
194
93
  # The resource name of the span in the following format:
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/compute/docs/reference/latest/
26
26
  module ComputeAlpha
27
27
  VERSION = 'Alpha'
28
- REVISION = '20170821'
28
+ REVISION = '20170905'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -1063,10 +1063,9 @@ module Google
1063
1063
  # @return [Fixnum]
1064
1064
  attr_accessor :disk_size_gb
1065
1065
 
1066
- # Assigns a zero-based index to this disk, where 0 is reserved for the boot disk.
1067
- # For example, if you have many disks attached to an instance, each disk would
1068
- # have a unique index number. If not specified, the server will choose an
1069
- # appropriate value.
1066
+ # [Output Only] A zero-based index to this disk, where 0 is reserved for the
1067
+ # boot disk. If you have many disks attached to an instance, each disk would
1068
+ # have a unique index number.
1070
1069
  # Corresponds to the JSON property `index`
1071
1070
  # @return [Fixnum]
1072
1071
  attr_accessor :index
@@ -2105,6 +2104,15 @@ module Google
2105
2104
  # @return [Fixnum]
2106
2105
  attr_accessor :max_connections
2107
2106
 
2107
+ # The max number of simultaneous connections that a single backend network
2108
+ # endpoint can handle. This is used to calculate the capacity of the group. Can
2109
+ # be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION
2110
+ # mode, either maxConnections or maxConnectionsPerEndpoint must be set.
2111
+ # This cannot be used for internal load balancing.
2112
+ # Corresponds to the JSON property `maxConnectionsPerEndpoint`
2113
+ # @return [Fixnum]
2114
+ attr_accessor :max_connections_per_endpoint
2115
+
2108
2116
  # The max number of simultaneous connections that a single backend instance can
2109
2117
  # handle. This is used to calculate the capacity of the group. Can be used in
2110
2118
  # either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either
@@ -2122,6 +2130,15 @@ module Google
2122
2130
  # @return [Fixnum]
2123
2131
  attr_accessor :max_rate
2124
2132
 
2133
+ # The max requests per second (RPS) that a single backend network endpoint can
2134
+ # handle. This is used to calculate the capacity of the group. Can be used in
2135
+ # either balancing mode. For RATE mode, either maxRate or maxRatePerEndpoint
2136
+ # must be set.
2137
+ # This cannot be used for internal load balancing.
2138
+ # Corresponds to the JSON property `maxRatePerEndpoint`
2139
+ # @return [Float]
2140
+ attr_accessor :max_rate_per_endpoint
2141
+
2125
2142
  # The max requests per second (RPS) that a single backend instance can handle.
2126
2143
  # This is used to calculate the capacity of the group. Can be used in either
2127
2144
  # balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be
@@ -2150,8 +2167,10 @@ module Google
2150
2167
  @failover = args[:failover] if args.key?(:failover)
2151
2168
  @group = args[:group] if args.key?(:group)
2152
2169
  @max_connections = args[:max_connections] if args.key?(:max_connections)
2170
+ @max_connections_per_endpoint = args[:max_connections_per_endpoint] if args.key?(:max_connections_per_endpoint)
2153
2171
  @max_connections_per_instance = args[:max_connections_per_instance] if args.key?(:max_connections_per_instance)
2154
2172
  @max_rate = args[:max_rate] if args.key?(:max_rate)
2173
+ @max_rate_per_endpoint = args[:max_rate_per_endpoint] if args.key?(:max_rate_per_endpoint)
2155
2174
  @max_rate_per_instance = args[:max_rate_per_instance] if args.key?(:max_rate_per_instance)
2156
2175
  @max_utilization = args[:max_utilization] if args.key?(:max_utilization)
2157
2176
  end
@@ -2430,19 +2449,10 @@ module Google
2430
2449
  attr_accessor :enable_cdn
2431
2450
  alias_method :enable_cdn?, :enable_cdn
2432
2451
 
2433
- # The value of the field must be in [0, 1]. If set, 'backends[].failover' must
2434
- # be set. They together define the fallback behavior of the primary backend: if
2435
- # the ratio of the healthy VMs in the primary backend is at or below this number,
2436
- # traffic arriving at the load-balanced IP will be directed to the failover
2437
- # backend.
2438
- # In case where 'failoverRatio' is not set or all the VMs in the backup backend
2439
- # are unhealthy, the traffic will be directed back to the primary backend in the
2440
- # "force" mode, where traffic will be spread to the healthy VMs with the best
2441
- # effort, or to all VMs when no VM is healthy.
2442
- # This field is only used with l4 load balancing.
2443
- # Corresponds to the JSON property `failoverRatio`
2444
- # @return [Float]
2445
- attr_accessor :failover_ratio
2452
+ #
2453
+ # Corresponds to the JSON property `failoverPolicy`
2454
+ # @return [Google::Apis::ComputeAlpha::BackendServiceFailoverPolicy]
2455
+ attr_accessor :failover_policy
2446
2456
 
2447
2457
  # Fingerprint of this resource. A hash of the contents stored in this object.
2448
2458
  # This field is used in optimistic locking. This field will be ignored when
@@ -2568,7 +2578,7 @@ module Google
2568
2578
  @custom_request_headers = args[:custom_request_headers] if args.key?(:custom_request_headers)
2569
2579
  @description = args[:description] if args.key?(:description)
2570
2580
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
2571
- @failover_ratio = args[:failover_ratio] if args.key?(:failover_ratio)
2581
+ @failover_policy = args[:failover_policy] if args.key?(:failover_policy)
2572
2582
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
2573
2583
  @health_checks = args[:health_checks] if args.key?(:health_checks)
2574
2584
  @iap = args[:iap] if args.key?(:iap)
@@ -2742,6 +2752,55 @@ module Google
2742
2752
  end
2743
2753
  end
2744
2754
 
2755
+ #
2756
+ class BackendServiceFailoverPolicy
2757
+ include Google::Apis::Core::Hashable
2758
+
2759
+ # On failover or failback, this field indicates whether connection drain will be
2760
+ # honored. Setting this to true has the following effect: connections to the old
2761
+ # active pool are not drained. Connections to the new active pool use the
2762
+ # timeout of 10 min (currently fixed). Setting to false has the following effect:
2763
+ # both old and new connections will have a drain timeout of 10 min.
2764
+ # This can be set to true only if the protocol is TCP.
2765
+ # The default is false.
2766
+ # Corresponds to the JSON property `disableConnectionDrainOnFailover`
2767
+ # @return [Boolean]
2768
+ attr_accessor :disable_connection_drain_on_failover
2769
+ alias_method :disable_connection_drain_on_failover?, :disable_connection_drain_on_failover
2770
+
2771
+ # This option is used only when no healthy VMs are detected in the primary and
2772
+ # backup instance groups. When set to true, traffic is dropped. When set to
2773
+ # false, new connections are sent across all VMs in the primary group.
2774
+ # The default is false.
2775
+ # Corresponds to the JSON property `dropTrafficIfUnhealthy`
2776
+ # @return [Boolean]
2777
+ attr_accessor :drop_traffic_if_unhealthy
2778
+ alias_method :drop_traffic_if_unhealthy?, :drop_traffic_if_unhealthy
2779
+
2780
+ # The value of the field must be in [0, 1]. If the ratio of the healthy VMs in
2781
+ # the primary backend is at or below this number, traffic arriving at the load-
2782
+ # balanced IP will be directed to the failover backend.
2783
+ # In case where 'failoverRatio' is not set or all the VMs in the backup backend
2784
+ # are unhealthy, the traffic will be directed back to the primary backend in the
2785
+ # "force" mode, where traffic will be spread to the healthy VMs with the best
2786
+ # effort, or to all VMs when no VM is healthy.
2787
+ # This field is only used with l4 load balancing.
2788
+ # Corresponds to the JSON property `failoverRatio`
2789
+ # @return [Float]
2790
+ attr_accessor :failover_ratio
2791
+
2792
+ def initialize(**args)
2793
+ update!(**args)
2794
+ end
2795
+
2796
+ # Update properties of this object
2797
+ def update!(**args)
2798
+ @disable_connection_drain_on_failover = args[:disable_connection_drain_on_failover] if args.key?(:disable_connection_drain_on_failover)
2799
+ @drop_traffic_if_unhealthy = args[:drop_traffic_if_unhealthy] if args.key?(:drop_traffic_if_unhealthy)
2800
+ @failover_ratio = args[:failover_ratio] if args.key?(:failover_ratio)
2801
+ end
2802
+ end
2803
+
2745
2804
  #
2746
2805
  class BackendServiceGroupHealth
2747
2806
  include Google::Apis::Core::Hashable
@@ -5342,6 +5401,18 @@ module Google
5342
5401
  # @return [String]
5343
5402
  attr_accessor :description
5344
5403
 
5404
+ # Fingerprint of this resource. A hash of the contents stored in this object.
5405
+ # This field is used in optimistic locking. This field will be ignored when
5406
+ # inserting a ForwardingRule. Include the fingerprint in patch request to ensure
5407
+ # that you do not overwrite changes that were applied from another concurrent
5408
+ # request.
5409
+ # To see the latest fingerprint, make a get() request to retrieve a
5410
+ # ForwardingRule.
5411
+ # Corresponds to the JSON property `fingerprint`
5412
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
5413
+ # @return [String]
5414
+ attr_accessor :fingerprint
5415
+
5345
5416
  # [Output Only] The unique identifier for the resource. This identifier is
5346
5417
  # defined by the server.
5347
5418
  # Corresponds to the JSON property `id`
@@ -5506,6 +5577,7 @@ module Google
5506
5577
  @backend_service = args[:backend_service] if args.key?(:backend_service)
5507
5578
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
5508
5579
  @description = args[:description] if args.key?(:description)
5580
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
5509
5581
  @id = args[:id] if args.key?(:id)
5510
5582
  @ip_version = args[:ip_version] if args.key?(:ip_version)
5511
5583
  @kind = args[:kind] if args.key?(:kind)
@@ -5990,6 +6062,26 @@ module Google
5990
6062
  # @return [String]
5991
6063
  attr_accessor :port_name
5992
6064
 
6065
+ # Specifies how port is selected for health checking, can be one of following
6066
+ # values:
6067
+ # USE_FIXED_PORT: The port number in
6068
+ # port
6069
+ # is used for health checking.
6070
+ # USE_NAMED_PORT: The
6071
+ # portName
6072
+ # is used for health checking.
6073
+ # USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each
6074
+ # network endpoint is used for health checking. For other backends, the port or
6075
+ # named port specified in the Backend Service is used for health checking.
6076
+ # If not specified, HTTP2 health check follows behavior specified in
6077
+ # port
6078
+ # and
6079
+ # portName
6080
+ # fields.
6081
+ # Corresponds to the JSON property `portSpecification`
6082
+ # @return [String]
6083
+ attr_accessor :port_specification
6084
+
5993
6085
  # Specifies the type of proxy header to append before sending data to the
5994
6086
  # backend, either NONE or PROXY_V1. The default is NONE.
5995
6087
  # Corresponds to the JSON property `proxyHeader`
@@ -6017,6 +6109,7 @@ module Google
6017
6109
  @host = args[:host] if args.key?(:host)
6018
6110
  @port = args[:port] if args.key?(:port)
6019
6111
  @port_name = args[:port_name] if args.key?(:port_name)
6112
+ @port_specification = args[:port_specification] if args.key?(:port_specification)
6020
6113
  @proxy_header = args[:proxy_header] if args.key?(:proxy_header)
6021
6114
  @request_path = args[:request_path] if args.key?(:request_path)
6022
6115
  @response = args[:response] if args.key?(:response)
@@ -6046,6 +6139,26 @@ module Google
6046
6139
  # @return [String]
6047
6140
  attr_accessor :port_name
6048
6141
 
6142
+ # Specifies how port is selected for health checking, can be one of following
6143
+ # values:
6144
+ # USE_FIXED_PORT: The port number in
6145
+ # port
6146
+ # is used for health checking.
6147
+ # USE_NAMED_PORT: The
6148
+ # portName
6149
+ # is used for health checking.
6150
+ # USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each
6151
+ # network endpoint is used for health checking. For other backends, the port or
6152
+ # named port specified in the Backend Service is used for health checking.
6153
+ # If not specified, HTTP health check follows behavior specified in
6154
+ # port
6155
+ # and
6156
+ # portName
6157
+ # fields.
6158
+ # Corresponds to the JSON property `portSpecification`
6159
+ # @return [String]
6160
+ attr_accessor :port_specification
6161
+
6049
6162
  # Specifies the type of proxy header to append before sending data to the
6050
6163
  # backend, either NONE or PROXY_V1. The default is NONE.
6051
6164
  # Corresponds to the JSON property `proxyHeader`
@@ -6073,6 +6186,7 @@ module Google
6073
6186
  @host = args[:host] if args.key?(:host)
6074
6187
  @port = args[:port] if args.key?(:port)
6075
6188
  @port_name = args[:port_name] if args.key?(:port_name)
6189
+ @port_specification = args[:port_specification] if args.key?(:port_specification)
6076
6190
  @proxy_header = args[:proxy_header] if args.key?(:proxy_header)
6077
6191
  @request_path = args[:request_path] if args.key?(:request_path)
6078
6192
  @response = args[:response] if args.key?(:response)
@@ -6102,6 +6216,26 @@ module Google
6102
6216
  # @return [String]
6103
6217
  attr_accessor :port_name
6104
6218
 
6219
+ # Specifies how port is selected for health checking, can be one of following
6220
+ # values:
6221
+ # USE_FIXED_PORT: The port number in
6222
+ # port
6223
+ # is used for health checking.
6224
+ # USE_NAMED_PORT: The
6225
+ # portName
6226
+ # is used for health checking.
6227
+ # USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each
6228
+ # network endpoint is used for health checking. For other backends, the port or
6229
+ # named port specified in the Backend Service is used for health checking.
6230
+ # If not specified, HTTPS health check follows behavior specified in
6231
+ # port
6232
+ # and
6233
+ # portName
6234
+ # fields.
6235
+ # Corresponds to the JSON property `portSpecification`
6236
+ # @return [String]
6237
+ attr_accessor :port_specification
6238
+
6105
6239
  # Specifies the type of proxy header to append before sending data to the
6106
6240
  # backend, either NONE or PROXY_V1. The default is NONE.
6107
6241
  # Corresponds to the JSON property `proxyHeader`
@@ -6129,6 +6263,7 @@ module Google
6129
6263
  @host = args[:host] if args.key?(:host)
6130
6264
  @port = args[:port] if args.key?(:port)
6131
6265
  @port_name = args[:port_name] if args.key?(:port_name)
6266
+ @port_specification = args[:port_specification] if args.key?(:port_specification)
6132
6267
  @proxy_header = args[:proxy_header] if args.key?(:proxy_header)
6133
6268
  @request_path = args[:request_path] if args.key?(:request_path)
6134
6269
  @response = args[:response] if args.key?(:response)
@@ -8201,6 +8336,12 @@ module Google
8201
8336
  # @return [String]
8202
8337
  attr_accessor :creation_timestamp
8203
8338
 
8339
+ # Whether the resource should be protected against deletion.
8340
+ # Corresponds to the JSON property `deletionProtection`
8341
+ # @return [Boolean]
8342
+ attr_accessor :deletion_protection
8343
+ alias_method :deletion_protection?, :deletion_protection
8344
+
8204
8345
  # An optional description of this resource. Provide this property when you
8205
8346
  # create the resource.
8206
8347
  # Corresponds to the JSON property `description`
@@ -8364,6 +8505,7 @@ module Google
8364
8505
  @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward)
8365
8506
  @cpu_platform = args[:cpu_platform] if args.key?(:cpu_platform)
8366
8507
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
8508
+ @deletion_protection = args[:deletion_protection] if args.key?(:deletion_protection)
8367
8509
  @description = args[:description] if args.key?(:description)
8368
8510
  @disks = args[:disks] if args.key?(:disks)
8369
8511
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
@@ -11416,7 +11558,7 @@ module Google
11416
11558
  end
11417
11559
 
11418
11560
  # Protocol definitions for Mixer API to support InterconnectAttachment. Next
11419
- # available tag: 14
11561
+ # available tag: 18
11420
11562
  class InterconnectAttachment
11421
11563
  include Google::Apis::Core::Hashable
11422
11564
 
@@ -15688,6 +15830,13 @@ module Google
15688
15830
  # @return [String]
15689
15831
  attr_accessor :creation_timestamp
15690
15832
 
15833
+ # This signifies the default network tier used for configuring resources of the
15834
+ # project and can only take the following values: PREMIUM, STANDARD. Initially
15835
+ # the default network tier is PREMIUM.
15836
+ # Corresponds to the JSON property `defaultNetworkTier`
15837
+ # @return [String]
15838
+ attr_accessor :default_network_tier
15839
+
15691
15840
  # [Output Only] Default service account used by VMs running in this project.
15692
15841
  # Corresponds to the JSON property `defaultServiceAccount`
15693
15842
  # @return [String]
@@ -15751,6 +15900,7 @@ module Google
15751
15900
  def update!(**args)
15752
15901
  @common_instance_metadata = args[:common_instance_metadata] if args.key?(:common_instance_metadata)
15753
15902
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
15903
+ @default_network_tier = args[:default_network_tier] if args.key?(:default_network_tier)
15754
15904
  @default_service_account = args[:default_service_account] if args.key?(:default_service_account)
15755
15905
  @description = args[:description] if args.key?(:description)
15756
15906
  @enabled_features = args[:enabled_features] if args.key?(:enabled_features)
@@ -15821,7 +15971,7 @@ module Google
15821
15971
  # @return [String]
15822
15972
  attr_accessor :next_page_token
15823
15973
 
15824
- # Serive resources (a.k.a service projects) attached to this project as their
15974
+ # Service resources (a.k.a service projects) attached to this project as their
15825
15975
  # shared VPC host.
15826
15976
  # Corresponds to the JSON property `resources`
15827
15977
  # @return [Array<Google::Apis::ComputeAlpha::XpnResourceId>]
@@ -15860,6 +16010,25 @@ module Google
15860
16010
  end
15861
16011
  end
15862
16012
 
16013
+ #
16014
+ class ProjectsSetDefaultNetworkTierRequest
16015
+ include Google::Apis::Core::Hashable
16016
+
16017
+ # Default network tier to be set.
16018
+ # Corresponds to the JSON property `networkTier`
16019
+ # @return [String]
16020
+ attr_accessor :network_tier
16021
+
16022
+ def initialize(**args)
16023
+ update!(**args)
16024
+ end
16025
+
16026
+ # Update properties of this object
16027
+ def update!(**args)
16028
+ @network_tier = args[:network_tier] if args.key?(:network_tier)
16029
+ end
16030
+ end
16031
+
15863
16032
  #
15864
16033
  class ProjectsSetDefaultServiceAccountRequest
15865
16034
  include Google::Apis::Core::Hashable
@@ -18548,6 +18717,26 @@ module Google
18548
18717
  # @return [String]
18549
18718
  attr_accessor :port_name
18550
18719
 
18720
+ # Specifies how port is selected for health checking, can be one of following
18721
+ # values:
18722
+ # USE_FIXED_PORT: The port number in
18723
+ # port
18724
+ # is used for health checking.
18725
+ # USE_NAMED_PORT: The
18726
+ # portName
18727
+ # is used for health checking.
18728
+ # USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each
18729
+ # network endpoint is used for health checking. For other backends, the port or
18730
+ # named port specified in the Backend Service is used for health checking.
18731
+ # If not specified, SSL health check follows behavior specified in
18732
+ # port
18733
+ # and
18734
+ # portName
18735
+ # fields.
18736
+ # Corresponds to the JSON property `portSpecification`
18737
+ # @return [String]
18738
+ attr_accessor :port_specification
18739
+
18551
18740
  # Specifies the type of proxy header to append before sending data to the
18552
18741
  # backend, either NONE or PROXY_V1. The default is NONE.
18553
18742
  # Corresponds to the JSON property `proxyHeader`
@@ -18577,6 +18766,7 @@ module Google
18577
18766
  def update!(**args)
18578
18767
  @port = args[:port] if args.key?(:port)
18579
18768
  @port_name = args[:port_name] if args.key?(:port_name)
18769
+ @port_specification = args[:port_specification] if args.key?(:port_specification)
18580
18770
  @proxy_header = args[:proxy_header] if args.key?(:proxy_header)
18581
18771
  @request = args[:request] if args.key?(:request)
18582
18772
  @response = args[:response] if args.key?(:response)
@@ -18626,8 +18816,86 @@ module Google
18626
18816
  end
18627
18817
  end
18628
18818
 
18819
+ # A security policy is comprised of one or more rules. It can also be associated
18820
+ # with one or more 'targets'.
18821
+ class SecurityPolicy
18822
+ include Google::Apis::Core::Hashable
18823
+
18824
+ # [Output Only] Creation timestamp in RFC3339 text format.
18825
+ # Corresponds to the JSON property `creationTimestamp`
18826
+ # @return [String]
18827
+ attr_accessor :creation_timestamp
18828
+
18829
+ # An optional description of this resource. Provide this property when you
18830
+ # create the resource.
18831
+ # Corresponds to the JSON property `description`
18832
+ # @return [String]
18833
+ attr_accessor :description
18834
+
18835
+ # Specifies a fingerprint for this resource, which is essentially a hash of the
18836
+ # metadata's contents and used for optimistic locking. The fingerprint is
18837
+ # initially generated by Compute Engine and changes after every request to
18838
+ # modify or update metadata. You must always provide an up-to-date fingerprint
18839
+ # hash in order to update or change metadata.
18840
+ # To see the latest fingerprint, make get() request to the security policy.
18841
+ # Corresponds to the JSON property `fingerprint`
18842
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
18843
+ # @return [String]
18844
+ attr_accessor :fingerprint
18845
+
18846
+ # [Output Only] The unique identifier for the resource. This identifier is
18847
+ # defined by the server.
18848
+ # Corresponds to the JSON property `id`
18849
+ # @return [Fixnum]
18850
+ attr_accessor :id
18851
+
18852
+ # [Output only] Type of the resource. Always compute#securityPolicyfor security
18853
+ # policies
18854
+ # Corresponds to the JSON property `kind`
18855
+ # @return [String]
18856
+ attr_accessor :kind
18857
+
18858
+ # Name of the resource. Provided by the client when the resource is created. The
18859
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
18860
+ # name must be 1-63 characters long and match the regular expression [a-z]([-a-
18861
+ # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter,
18862
+ # and all following characters must be a dash, lowercase letter, or digit,
18863
+ # except the last character, which cannot be a dash.
18864
+ # Corresponds to the JSON property `name`
18865
+ # @return [String]
18866
+ attr_accessor :name
18867
+
18868
+ # List of rules that belong to this policy. There must always be a default rule (
18869
+ # rule with priority 2147483647 and match "*"). If no rules are provided when
18870
+ # creating a security policy, a default rule with action "allow" will be added.
18871
+ # Corresponds to the JSON property `rules`
18872
+ # @return [Array<Google::Apis::ComputeAlpha::SecurityPolicyRule>]
18873
+ attr_accessor :rules
18874
+
18875
+ # [Output Only] Server-defined URL for the resource.
18876
+ # Corresponds to the JSON property `selfLink`
18877
+ # @return [String]
18878
+ attr_accessor :self_link
18879
+
18880
+ def initialize(**args)
18881
+ update!(**args)
18882
+ end
18883
+
18884
+ # Update properties of this object
18885
+ def update!(**args)
18886
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
18887
+ @description = args[:description] if args.key?(:description)
18888
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
18889
+ @id = args[:id] if args.key?(:id)
18890
+ @kind = args[:kind] if args.key?(:kind)
18891
+ @name = args[:name] if args.key?(:name)
18892
+ @rules = args[:rules] if args.key?(:rules)
18893
+ @self_link = args[:self_link] if args.key?(:self_link)
18894
+ end
18895
+ end
18896
+
18629
18897
  #
18630
- class SecurityPoliciesList
18898
+ class SecurityPolicyList
18631
18899
  include Google::Apis::Core::Hashable
18632
18900
 
18633
18901
  # [Output Only] Unique identifier for the resource; defined by the server.
@@ -18640,8 +18908,8 @@ module Google
18640
18908
  # @return [Array<Google::Apis::ComputeAlpha::SecurityPolicy>]
18641
18909
  attr_accessor :items
18642
18910
 
18643
- # [Output Only] Type of resource. Always compute#securityPoliciesList for
18644
- # listsof securityPolicies
18911
+ # [Output Only] Type of resource. Always compute#securityPolicyList for listsof
18912
+ # securityPolicies
18645
18913
  # Corresponds to the JSON property `kind`
18646
18914
  # @return [String]
18647
18915
  attr_accessor :kind
@@ -18657,7 +18925,7 @@ module Google
18657
18925
 
18658
18926
  # [Output Only] Informational warning message.
18659
18927
  # Corresponds to the JSON property `warning`
18660
- # @return [Google::Apis::ComputeAlpha::SecurityPoliciesList::Warning]
18928
+ # @return [Google::Apis::ComputeAlpha::SecurityPolicyList::Warning]
18661
18929
  attr_accessor :warning
18662
18930
 
18663
18931
  def initialize(**args)
@@ -18686,7 +18954,7 @@ module Google
18686
18954
  # [Output Only] Metadata about this warning in key: value format. For example:
18687
18955
  # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
18688
18956
  # Corresponds to the JSON property `data`
18689
- # @return [Array<Google::Apis::ComputeAlpha::SecurityPoliciesList::Warning::Datum>]
18957
+ # @return [Array<Google::Apis::ComputeAlpha::SecurityPolicyList::Warning::Datum>]
18690
18958
  attr_accessor :data
18691
18959
 
18692
18960
  # [Output Only] A human-readable description of the warning code.
@@ -18738,84 +19006,6 @@ module Google
18738
19006
  end
18739
19007
  end
18740
19008
 
18741
- # A security policy is comprised of one or more rules. It can also be associated
18742
- # with one or more 'targets'.
18743
- class SecurityPolicy
18744
- include Google::Apis::Core::Hashable
18745
-
18746
- # [Output Only] Creation timestamp in RFC3339 text format.
18747
- # Corresponds to the JSON property `creationTimestamp`
18748
- # @return [String]
18749
- attr_accessor :creation_timestamp
18750
-
18751
- # An optional description of this resource. Provide this property when you
18752
- # create the resource.
18753
- # Corresponds to the JSON property `description`
18754
- # @return [String]
18755
- attr_accessor :description
18756
-
18757
- # Specifies a fingerprint for this resource, which is essentially a hash of the
18758
- # metadata's contents and used for optimistic locking. The fingerprint is
18759
- # initially generated by Compute Engine and changes after every request to
18760
- # modify or update metadata. You must always provide an up-to-date fingerprint
18761
- # hash in order to update or change metadata.
18762
- # To see the latest fingerprint, make get() request to the security policy.
18763
- # Corresponds to the JSON property `fingerprint`
18764
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
18765
- # @return [String]
18766
- attr_accessor :fingerprint
18767
-
18768
- # [Output Only] The unique identifier for the resource. This identifier is
18769
- # defined by the server.
18770
- # Corresponds to the JSON property `id`
18771
- # @return [Fixnum]
18772
- attr_accessor :id
18773
-
18774
- # [Output only] Type of the resource. Always compute#securityPolicyfor security
18775
- # policies
18776
- # Corresponds to the JSON property `kind`
18777
- # @return [String]
18778
- attr_accessor :kind
18779
-
18780
- # Name of the resource. Provided by the client when the resource is created. The
18781
- # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
18782
- # name must be 1-63 characters long and match the regular expression [a-z]([-a-
18783
- # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter,
18784
- # and all following characters must be a dash, lowercase letter, or digit,
18785
- # except the last character, which cannot be a dash.
18786
- # Corresponds to the JSON property `name`
18787
- # @return [String]
18788
- attr_accessor :name
18789
-
18790
- # List of rules that belong to this policy. There must always be a default rule (
18791
- # rule with priority 2147483647 and match "*"). If no rules are provided when
18792
- # creating a security policy, a default rule with action "allow" will be added.
18793
- # Corresponds to the JSON property `rules`
18794
- # @return [Array<Google::Apis::ComputeAlpha::SecurityPolicyRule>]
18795
- attr_accessor :rules
18796
-
18797
- # [Output Only] Server-defined URL for the resource.
18798
- # Corresponds to the JSON property `selfLink`
18799
- # @return [String]
18800
- attr_accessor :self_link
18801
-
18802
- def initialize(**args)
18803
- update!(**args)
18804
- end
18805
-
18806
- # Update properties of this object
18807
- def update!(**args)
18808
- @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
18809
- @description = args[:description] if args.key?(:description)
18810
- @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
18811
- @id = args[:id] if args.key?(:id)
18812
- @kind = args[:kind] if args.key?(:kind)
18813
- @name = args[:name] if args.key?(:name)
18814
- @rules = args[:rules] if args.key?(:rules)
18815
- @self_link = args[:self_link] if args.key?(:self_link)
18816
- end
18817
- end
18818
-
18819
19009
  #
18820
19010
  class SecurityPolicyReference
18821
19011
  include Google::Apis::Core::Hashable
@@ -19512,25 +19702,352 @@ module Google
19512
19702
  end
19513
19703
  end
19514
19704
 
19515
- # A Subnetwork resource.
19516
- class Subnetwork
19705
+ #
19706
+ class SslPoliciesList
19517
19707
  include Google::Apis::Core::Hashable
19518
19708
 
19519
- # Whether this subnetwork can conflict with static routes. Setting this to true
19520
- # allows this subnetwork's primary and secondary ranges to conflict with routes
19521
- # that have already been configured on the corresponding network. Static routes
19522
- # will take precedence over the subnetwork route if the route prefix length is
19523
- # at least as large as the subnetwork prefix length.
19524
- # Also, packets destined to IPs within subnetwork may contain private/sensitive
19525
- # data and are prevented from leaving the virtual network. Setting this field to
19526
- # true will disable this feature.
19527
- # The default value is false and applies to all existing subnetworks and
19528
- # automatically created subnetworks.
19529
- # This field cannot be set to true at resource creation time.
19530
- # Corresponds to the JSON property `allowSubnetCidrRoutesOverlap`
19531
- # @return [Boolean]
19532
- attr_accessor :allow_subnet_cidr_routes_overlap
19533
- alias_method :allow_subnet_cidr_routes_overlap?, :allow_subnet_cidr_routes_overlap
19709
+ # [Output Only] Unique identifier for the resource; defined by the server.
19710
+ # Corresponds to the JSON property `id`
19711
+ # @return [String]
19712
+ attr_accessor :id
19713
+
19714
+ # A list of SslPolicy resources.
19715
+ # Corresponds to the JSON property `items`
19716
+ # @return [Array<Google::Apis::ComputeAlpha::SslPolicy>]
19717
+ attr_accessor :items
19718
+
19719
+ # [Output Only] Type of the resource. Always compute#sslPoliciesList for lists
19720
+ # of sslPolicies.
19721
+ # Corresponds to the JSON property `kind`
19722
+ # @return [String]
19723
+ attr_accessor :kind
19724
+
19725
+ # [Output Only] This token allows you to get the next page of results for list
19726
+ # requests. If the number of results is larger than maxResults, use the
19727
+ # nextPageToken as a value for the query parameter pageToken in the next list
19728
+ # request. Subsequent list requests will have their own nextPageToken to
19729
+ # continue paging through the results.
19730
+ # Corresponds to the JSON property `nextPageToken`
19731
+ # @return [String]
19732
+ attr_accessor :next_page_token
19733
+
19734
+ # [Output Only] Server-defined URL for this resource.
19735
+ # Corresponds to the JSON property `selfLink`
19736
+ # @return [String]
19737
+ attr_accessor :self_link
19738
+
19739
+ # [Output Only] Informational warning message.
19740
+ # Corresponds to the JSON property `warning`
19741
+ # @return [Google::Apis::ComputeAlpha::SslPoliciesList::Warning]
19742
+ attr_accessor :warning
19743
+
19744
+ def initialize(**args)
19745
+ update!(**args)
19746
+ end
19747
+
19748
+ # Update properties of this object
19749
+ def update!(**args)
19750
+ @id = args[:id] if args.key?(:id)
19751
+ @items = args[:items] if args.key?(:items)
19752
+ @kind = args[:kind] if args.key?(:kind)
19753
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
19754
+ @self_link = args[:self_link] if args.key?(:self_link)
19755
+ @warning = args[:warning] if args.key?(:warning)
19756
+ end
19757
+
19758
+ # [Output Only] Informational warning message.
19759
+ class Warning
19760
+ include Google::Apis::Core::Hashable
19761
+
19762
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
19763
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
19764
+ # Corresponds to the JSON property `code`
19765
+ # @return [String]
19766
+ attr_accessor :code
19767
+
19768
+ # [Output Only] Metadata about this warning in key: value format. For example:
19769
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
19770
+ # Corresponds to the JSON property `data`
19771
+ # @return [Array<Google::Apis::ComputeAlpha::SslPoliciesList::Warning::Datum>]
19772
+ attr_accessor :data
19773
+
19774
+ # [Output Only] A human-readable description of the warning code.
19775
+ # Corresponds to the JSON property `message`
19776
+ # @return [String]
19777
+ attr_accessor :message
19778
+
19779
+ def initialize(**args)
19780
+ update!(**args)
19781
+ end
19782
+
19783
+ # Update properties of this object
19784
+ def update!(**args)
19785
+ @code = args[:code] if args.key?(:code)
19786
+ @data = args[:data] if args.key?(:data)
19787
+ @message = args[:message] if args.key?(:message)
19788
+ end
19789
+
19790
+ #
19791
+ class Datum
19792
+ include Google::Apis::Core::Hashable
19793
+
19794
+ # [Output Only] A key that provides more detail on the warning being returned.
19795
+ # For example, for warnings where there are no results in a list request for a
19796
+ # particular zone, this key might be scope and the key value might be the zone
19797
+ # name. Other examples might be a key indicating a deprecated resource and a
19798
+ # suggested replacement, or a warning about invalid network settings (for
19799
+ # example, if an instance attempts to perform IP forwarding but is not enabled
19800
+ # for IP forwarding).
19801
+ # Corresponds to the JSON property `key`
19802
+ # @return [String]
19803
+ attr_accessor :key
19804
+
19805
+ # [Output Only] A warning data value corresponding to the key.
19806
+ # Corresponds to the JSON property `value`
19807
+ # @return [String]
19808
+ attr_accessor :value
19809
+
19810
+ def initialize(**args)
19811
+ update!(**args)
19812
+ end
19813
+
19814
+ # Update properties of this object
19815
+ def update!(**args)
19816
+ @key = args[:key] if args.key?(:key)
19817
+ @value = args[:value] if args.key?(:value)
19818
+ end
19819
+ end
19820
+ end
19821
+ end
19822
+
19823
+ #
19824
+ class SslPoliciesListAvailableFeaturesResponse
19825
+ include Google::Apis::Core::Hashable
19826
+
19827
+ #
19828
+ # Corresponds to the JSON property `features`
19829
+ # @return [Array<String>]
19830
+ attr_accessor :features
19831
+
19832
+ def initialize(**args)
19833
+ update!(**args)
19834
+ end
19835
+
19836
+ # Update properties of this object
19837
+ def update!(**args)
19838
+ @features = args[:features] if args.key?(:features)
19839
+ end
19840
+ end
19841
+
19842
+ # A SSL policy specifies the server-side support for SSL features. This can be
19843
+ # attached to a TargetHttpsProxy or a TargetSslProxy. This affects connections
19844
+ # between clients and the HTTPS or SSL proxy load balancer. They do not affect
19845
+ # the connection between the load balancers and the backends.
19846
+ class SslPolicy
19847
+ include Google::Apis::Core::Hashable
19848
+
19849
+ # [Output Only] Creation timestamp in RFC3339 text format.
19850
+ # Corresponds to the JSON property `creationTimestamp`
19851
+ # @return [String]
19852
+ attr_accessor :creation_timestamp
19853
+
19854
+ # List of features enabled when the selected profile is CUSTOM. The
19855
+ # - method returns the set of features that can be specified in this list. This
19856
+ # field must be empty if the profile is not CUSTOM.
19857
+ # Corresponds to the JSON property `customFeatures`
19858
+ # @return [Array<String>]
19859
+ attr_accessor :custom_features
19860
+
19861
+ # An optional description of this resource. Provide this property when you
19862
+ # create the resource.
19863
+ # Corresponds to the JSON property `description`
19864
+ # @return [String]
19865
+ attr_accessor :description
19866
+
19867
+ # [Output Only] The list of features enabled in the SSL policy.
19868
+ # Corresponds to the JSON property `enabledFeatures`
19869
+ # @return [Array<String>]
19870
+ attr_accessor :enabled_features
19871
+
19872
+ # Fingerprint of this resource. A hash of the contents stored in this object.
19873
+ # This field is used in optimistic locking. This field will be ignored when
19874
+ # inserting a SslPolicy. An up-to-date fingerprint must be provided in order to
19875
+ # update the SslPolicy.
19876
+ # Corresponds to the JSON property `fingerprint`
19877
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
19878
+ # @return [String]
19879
+ attr_accessor :fingerprint
19880
+
19881
+ # [Output Only] The unique identifier for the resource. This identifier is
19882
+ # defined by the server.
19883
+ # Corresponds to the JSON property `id`
19884
+ # @return [Fixnum]
19885
+ attr_accessor :id
19886
+
19887
+ # [Output only] Type of the resource. Always compute#sslPolicyfor SSL policies.
19888
+ # Corresponds to the JSON property `kind`
19889
+ # @return [String]
19890
+ attr_accessor :kind
19891
+
19892
+ # The minimum version of SSL protocol that can be used by the clients to
19893
+ # establish a connection with the load balancer. This can be one of TLS_1_0,
19894
+ # TLS_1_1, TLS_1_2, TLS_1_3.
19895
+ # Corresponds to the JSON property `minTlsVersion`
19896
+ # @return [String]
19897
+ attr_accessor :min_tls_version
19898
+
19899
+ # Name of the resource. The name must be 1-63 characters long, and comply with
19900
+ # RFC1035. Specifically, the name must be 1-63 characters long and match the
19901
+ # regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character
19902
+ # must be a lowercase letter, and all following characters must be a dash,
19903
+ # lowercase letter, or digit, except the last character, which cannot be a dash.
19904
+ # Corresponds to the JSON property `name`
19905
+ # @return [String]
19906
+ attr_accessor :name
19907
+
19908
+ # Profile specifies the set of SSL features that can be used by the load
19909
+ # balancer when negotiating SSL with clients. This can be one of COMPATIBLE,
19910
+ # MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to
19911
+ # enable must be specified in the customFeatures field.
19912
+ # Corresponds to the JSON property `profile`
19913
+ # @return [String]
19914
+ attr_accessor :profile
19915
+
19916
+ # [Output Only] Server-defined URL for the resource.
19917
+ # Corresponds to the JSON property `selfLink`
19918
+ # @return [String]
19919
+ attr_accessor :self_link
19920
+
19921
+ # [Output Only] If potential misconfigurations are detected for this SSL policy,
19922
+ # this field will be populated with warning messages.
19923
+ # Corresponds to the JSON property `warnings`
19924
+ # @return [Array<Google::Apis::ComputeAlpha::SslPolicy::Warning>]
19925
+ attr_accessor :warnings
19926
+
19927
+ def initialize(**args)
19928
+ update!(**args)
19929
+ end
19930
+
19931
+ # Update properties of this object
19932
+ def update!(**args)
19933
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
19934
+ @custom_features = args[:custom_features] if args.key?(:custom_features)
19935
+ @description = args[:description] if args.key?(:description)
19936
+ @enabled_features = args[:enabled_features] if args.key?(:enabled_features)
19937
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
19938
+ @id = args[:id] if args.key?(:id)
19939
+ @kind = args[:kind] if args.key?(:kind)
19940
+ @min_tls_version = args[:min_tls_version] if args.key?(:min_tls_version)
19941
+ @name = args[:name] if args.key?(:name)
19942
+ @profile = args[:profile] if args.key?(:profile)
19943
+ @self_link = args[:self_link] if args.key?(:self_link)
19944
+ @warnings = args[:warnings] if args.key?(:warnings)
19945
+ end
19946
+
19947
+ #
19948
+ class Warning
19949
+ include Google::Apis::Core::Hashable
19950
+
19951
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
19952
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
19953
+ # Corresponds to the JSON property `code`
19954
+ # @return [String]
19955
+ attr_accessor :code
19956
+
19957
+ # [Output Only] Metadata about this warning in key: value format. For example:
19958
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
19959
+ # Corresponds to the JSON property `data`
19960
+ # @return [Array<Google::Apis::ComputeAlpha::SslPolicy::Warning::Datum>]
19961
+ attr_accessor :data
19962
+
19963
+ # [Output Only] A human-readable description of the warning code.
19964
+ # Corresponds to the JSON property `message`
19965
+ # @return [String]
19966
+ attr_accessor :message
19967
+
19968
+ def initialize(**args)
19969
+ update!(**args)
19970
+ end
19971
+
19972
+ # Update properties of this object
19973
+ def update!(**args)
19974
+ @code = args[:code] if args.key?(:code)
19975
+ @data = args[:data] if args.key?(:data)
19976
+ @message = args[:message] if args.key?(:message)
19977
+ end
19978
+
19979
+ #
19980
+ class Datum
19981
+ include Google::Apis::Core::Hashable
19982
+
19983
+ # [Output Only] A key that provides more detail on the warning being returned.
19984
+ # For example, for warnings where there are no results in a list request for a
19985
+ # particular zone, this key might be scope and the key value might be the zone
19986
+ # name. Other examples might be a key indicating a deprecated resource and a
19987
+ # suggested replacement, or a warning about invalid network settings (for
19988
+ # example, if an instance attempts to perform IP forwarding but is not enabled
19989
+ # for IP forwarding).
19990
+ # Corresponds to the JSON property `key`
19991
+ # @return [String]
19992
+ attr_accessor :key
19993
+
19994
+ # [Output Only] A warning data value corresponding to the key.
19995
+ # Corresponds to the JSON property `value`
19996
+ # @return [String]
19997
+ attr_accessor :value
19998
+
19999
+ def initialize(**args)
20000
+ update!(**args)
20001
+ end
20002
+
20003
+ # Update properties of this object
20004
+ def update!(**args)
20005
+ @key = args[:key] if args.key?(:key)
20006
+ @value = args[:value] if args.key?(:value)
20007
+ end
20008
+ end
20009
+ end
20010
+ end
20011
+
20012
+ #
20013
+ class SslPolicyReference
20014
+ include Google::Apis::Core::Hashable
20015
+
20016
+ # URL of the SSL policy resource. Set this to empty string to clear any existing
20017
+ # SSL policy associated with the target proxy resource.
20018
+ # Corresponds to the JSON property `sslPolicy`
20019
+ # @return [String]
20020
+ attr_accessor :ssl_policy
20021
+
20022
+ def initialize(**args)
20023
+ update!(**args)
20024
+ end
20025
+
20026
+ # Update properties of this object
20027
+ def update!(**args)
20028
+ @ssl_policy = args[:ssl_policy] if args.key?(:ssl_policy)
20029
+ end
20030
+ end
20031
+
20032
+ # A Subnetwork resource.
20033
+ class Subnetwork
20034
+ include Google::Apis::Core::Hashable
20035
+
20036
+ # Whether this subnetwork can conflict with static routes. Setting this to true
20037
+ # allows this subnetwork's primary and secondary ranges to conflict with routes
20038
+ # that have already been configured on the corresponding network. Static routes
20039
+ # will take precedence over the subnetwork route if the route prefix length is
20040
+ # at least as large as the subnetwork prefix length.
20041
+ # Also, packets destined to IPs within subnetwork may contain private/sensitive
20042
+ # data and are prevented from leaving the virtual network. Setting this field to
20043
+ # true will disable this feature.
20044
+ # The default value is false and applies to all existing subnetworks and
20045
+ # automatically created subnetworks.
20046
+ # This field cannot be set to true at resource creation time.
20047
+ # Corresponds to the JSON property `allowSubnetCidrRoutesOverlap`
20048
+ # @return [Boolean]
20049
+ attr_accessor :allow_subnet_cidr_routes_overlap
20050
+ alias_method :allow_subnet_cidr_routes_overlap?, :allow_subnet_cidr_routes_overlap
19534
20051
 
19535
20052
  # [Output Only] Creation timestamp in RFC3339 text format.
19536
20053
  # Corresponds to the JSON property `creationTimestamp`
@@ -20060,6 +20577,26 @@ module Google
20060
20577
  # @return [String]
20061
20578
  attr_accessor :port_name
20062
20579
 
20580
+ # Specifies how port is selected for health checking, can be one of following
20581
+ # values:
20582
+ # USE_FIXED_PORT: The port number in
20583
+ # port
20584
+ # is used for health checking.
20585
+ # USE_NAMED_PORT: The
20586
+ # portName
20587
+ # is used for health checking.
20588
+ # USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each
20589
+ # network endpoint is used for health checking. For other backends, the port or
20590
+ # named port specified in the Backend Service is used for health checking.
20591
+ # If not specified, TCP health check follows behavior specified in
20592
+ # port
20593
+ # and
20594
+ # portName
20595
+ # fields.
20596
+ # Corresponds to the JSON property `portSpecification`
20597
+ # @return [String]
20598
+ attr_accessor :port_specification
20599
+
20063
20600
  # Specifies the type of proxy header to append before sending data to the
20064
20601
  # backend, either NONE or PROXY_V1. The default is NONE.
20065
20602
  # Corresponds to the JSON property `proxyHeader`
@@ -20089,6 +20626,7 @@ module Google
20089
20626
  def update!(**args)
20090
20627
  @port = args[:port] if args.key?(:port)
20091
20628
  @port_name = args[:port_name] if args.key?(:port_name)
20629
+ @port_specification = args[:port_specification] if args.key?(:port_specification)
20092
20630
  @proxy_header = args[:proxy_header] if args.key?(:proxy_header)
20093
20631
  @request = args[:request] if args.key?(:request)
20094
20632
  @response = args[:response] if args.key?(:response)
@@ -20414,6 +20952,13 @@ module Google
20414
20952
  # @return [Array<String>]
20415
20953
  attr_accessor :ssl_certificates
20416
20954
 
20955
+ # URL of SslPolicy resource that will be associated with the TargetHttpsProxy
20956
+ # resource. If not set, the TargetHttpsProxy resource will not have any SSL
20957
+ # policy configured.
20958
+ # Corresponds to the JSON property `sslPolicy`
20959
+ # @return [String]
20960
+ attr_accessor :ssl_policy
20961
+
20417
20962
  # A fully-qualified or valid partial URL to the UrlMap resource that defines the
20418
20963
  # mapping from URL to the BackendService. For example, the following are all
20419
20964
  # valid URLs for specifying a URL map:
@@ -20439,6 +20984,7 @@ module Google
20439
20984
  @quic_override = args[:quic_override] if args.key?(:quic_override)
20440
20985
  @self_link = args[:self_link] if args.key?(:self_link)
20441
20986
  @ssl_certificates = args[:ssl_certificates] if args.key?(:ssl_certificates)
20987
+ @ssl_policy = args[:ssl_policy] if args.key?(:ssl_policy)
20442
20988
  @url_map = args[:url_map] if args.key?(:url_map)
20443
20989
  end
20444
20990
  end
@@ -21675,6 +22221,13 @@ module Google
21675
22221
  # @return [Array<String>]
21676
22222
  attr_accessor :ssl_certificates
21677
22223
 
22224
+ # URL of SslPolicy resource that will be associated with the TargetSslProxy
22225
+ # resource. If not set, the TargetSslProxy resource will not have any SSL policy
22226
+ # configured.
22227
+ # Corresponds to the JSON property `sslPolicy`
22228
+ # @return [String]
22229
+ attr_accessor :ssl_policy
22230
+
21678
22231
  def initialize(**args)
21679
22232
  update!(**args)
21680
22233
  end
@@ -21691,6 +22244,7 @@ module Google
21691
22244
  @self_link = args[:self_link] if args.key?(:self_link)
21692
22245
  @service = args[:service] if args.key?(:service)
21693
22246
  @ssl_certificates = args[:ssl_certificates] if args.key?(:ssl_certificates)
22247
+ @ssl_policy = args[:ssl_policy] if args.key?(:ssl_policy)
21694
22248
  end
21695
22249
  end
21696
22250
 
@@ -22071,6 +22625,25 @@ module Google
22071
22625
  # @return [String]
22072
22626
  attr_accessor :kind
22073
22627
 
22628
+ # A fingerprint for the labels being applied to this TargetVpnGateway, which is
22629
+ # essentially a hash of the labels set used for optimistic locking. The
22630
+ # fingerprint is initially generated by Compute Engine and changes after every
22631
+ # request to modify or update labels. You must always provide an up-to-date
22632
+ # fingerprint hash in order to update or change labels.
22633
+ # To see the latest fingerprint, make a get() request to retrieve an
22634
+ # TargetVpnGateway.
22635
+ # Corresponds to the JSON property `labelFingerprint`
22636
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
22637
+ # @return [String]
22638
+ attr_accessor :label_fingerprint
22639
+
22640
+ # Labels to apply to this TargetVpnGateway resource. These can be later modified
22641
+ # by the setLabels method. Each label key/value must comply with RFC1035. Label
22642
+ # values may be empty.
22643
+ # Corresponds to the JSON property `labels`
22644
+ # @return [Hash<String,String>]
22645
+ attr_accessor :labels
22646
+
22074
22647
  # Name of the resource. Provided by the client when the resource is created. The
22075
22648
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
22076
22649
  # name must be 1-63 characters long and match the regular expression [a-z]([-a-
@@ -22119,6 +22692,8 @@ module Google
22119
22692
  @forwarding_rules = args[:forwarding_rules] if args.key?(:forwarding_rules)
22120
22693
  @id = args[:id] if args.key?(:id)
22121
22694
  @kind = args[:kind] if args.key?(:kind)
22695
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
22696
+ @labels = args[:labels] if args.key?(:labels)
22122
22697
  @name = args[:name] if args.key?(:name)
22123
22698
  @network = args[:network] if args.key?(:network)
22124
22699
  @region = args[:region] if args.key?(:region)
@@ -22919,6 +23494,144 @@ module Google
22919
23494
  end
22920
23495
  end
22921
23496
 
23497
+ # Subnetwork which the current user has compute.subnetworks.use permission on.
23498
+ class UsableSubnetwork
23499
+ include Google::Apis::Core::Hashable
23500
+
23501
+ # Subnetwork URL.
23502
+ # Corresponds to the JSON property `subnetwork`
23503
+ # @return [String]
23504
+ attr_accessor :subnetwork
23505
+
23506
+ def initialize(**args)
23507
+ update!(**args)
23508
+ end
23509
+
23510
+ # Update properties of this object
23511
+ def update!(**args)
23512
+ @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
23513
+ end
23514
+ end
23515
+
23516
+ #
23517
+ class UsableSubnetworksAggregatedList
23518
+ include Google::Apis::Core::Hashable
23519
+
23520
+ # [Output Only] The unique identifier for the resource. This identifier is
23521
+ # defined by the server.
23522
+ # Corresponds to the JSON property `id`
23523
+ # @return [String]
23524
+ attr_accessor :id
23525
+
23526
+ # [Output] A list of usable subnetwork URLs.
23527
+ # Corresponds to the JSON property `items`
23528
+ # @return [Array<Google::Apis::ComputeAlpha::UsableSubnetwork>]
23529
+ attr_accessor :items
23530
+
23531
+ # [Output Only] Type of resource. Always compute#usableSubnetworksAggregatedList
23532
+ # for aggregated lists of usable subnetworks.
23533
+ # Corresponds to the JSON property `kind`
23534
+ # @return [String]
23535
+ attr_accessor :kind
23536
+
23537
+ # [Output Only] This token allows you to get the next page of results for list
23538
+ # requests. If the number of results is larger than maxResults, use the
23539
+ # nextPageToken as a value for the query parameter pageToken in the next list
23540
+ # request. Subsequent list requests will have their own nextPageToken to
23541
+ # continue paging through the results.
23542
+ # Corresponds to the JSON property `nextPageToken`
23543
+ # @return [String]
23544
+ attr_accessor :next_page_token
23545
+
23546
+ # [Output Only] Server-defined URL for this resource.
23547
+ # Corresponds to the JSON property `selfLink`
23548
+ # @return [String]
23549
+ attr_accessor :self_link
23550
+
23551
+ # [Output Only] Informational warning message.
23552
+ # Corresponds to the JSON property `warning`
23553
+ # @return [Google::Apis::ComputeAlpha::UsableSubnetworksAggregatedList::Warning]
23554
+ attr_accessor :warning
23555
+
23556
+ def initialize(**args)
23557
+ update!(**args)
23558
+ end
23559
+
23560
+ # Update properties of this object
23561
+ def update!(**args)
23562
+ @id = args[:id] if args.key?(:id)
23563
+ @items = args[:items] if args.key?(:items)
23564
+ @kind = args[:kind] if args.key?(:kind)
23565
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
23566
+ @self_link = args[:self_link] if args.key?(:self_link)
23567
+ @warning = args[:warning] if args.key?(:warning)
23568
+ end
23569
+
23570
+ # [Output Only] Informational warning message.
23571
+ class Warning
23572
+ include Google::Apis::Core::Hashable
23573
+
23574
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
23575
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
23576
+ # Corresponds to the JSON property `code`
23577
+ # @return [String]
23578
+ attr_accessor :code
23579
+
23580
+ # [Output Only] Metadata about this warning in key: value format. For example:
23581
+ # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
23582
+ # Corresponds to the JSON property `data`
23583
+ # @return [Array<Google::Apis::ComputeAlpha::UsableSubnetworksAggregatedList::Warning::Datum>]
23584
+ attr_accessor :data
23585
+
23586
+ # [Output Only] A human-readable description of the warning code.
23587
+ # Corresponds to the JSON property `message`
23588
+ # @return [String]
23589
+ attr_accessor :message
23590
+
23591
+ def initialize(**args)
23592
+ update!(**args)
23593
+ end
23594
+
23595
+ # Update properties of this object
23596
+ def update!(**args)
23597
+ @code = args[:code] if args.key?(:code)
23598
+ @data = args[:data] if args.key?(:data)
23599
+ @message = args[:message] if args.key?(:message)
23600
+ end
23601
+
23602
+ #
23603
+ class Datum
23604
+ include Google::Apis::Core::Hashable
23605
+
23606
+ # [Output Only] A key that provides more detail on the warning being returned.
23607
+ # For example, for warnings where there are no results in a list request for a
23608
+ # particular zone, this key might be scope and the key value might be the zone
23609
+ # name. Other examples might be a key indicating a deprecated resource and a
23610
+ # suggested replacement, or a warning about invalid network settings (for
23611
+ # example, if an instance attempts to perform IP forwarding but is not enabled
23612
+ # for IP forwarding).
23613
+ # Corresponds to the JSON property `key`
23614
+ # @return [String]
23615
+ attr_accessor :key
23616
+
23617
+ # [Output Only] A warning data value corresponding to the key.
23618
+ # Corresponds to the JSON property `value`
23619
+ # @return [String]
23620
+ attr_accessor :value
23621
+
23622
+ def initialize(**args)
23623
+ update!(**args)
23624
+ end
23625
+
23626
+ # Update properties of this object
23627
+ def update!(**args)
23628
+ @key = args[:key] if args.key?(:key)
23629
+ @value = args[:value] if args.key?(:value)
23630
+ end
23631
+ end
23632
+ end
23633
+ end
23634
+
22922
23635
  # The location in Cloud Storage and naming method of the daily usage report.
22923
23636
  # Contains bucket_name and report_name prefix.
22924
23637
  class UsageExportLocation