google-cloud-data_fusion-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,489 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module DataFusion
23
+ module V1
24
+ # Network configuration for a Data Fusion instance. These configurations
25
+ # are used for peering with the customer network. Configurations are optional
26
+ # when a public Data Fusion instance is to be created. However, providing
27
+ # these configurations allows several benefits, such as reduced network latency
28
+ # while accessing the customer resources from managed Data Fusion instance
29
+ # nodes, as well as access to the customer on-prem resources.
30
+ # @!attribute [rw] network
31
+ # @return [::String]
32
+ # Name of the network in the customer project with which the Tenant Project
33
+ # will be peered for executing pipelines. In case of shared VPC where the
34
+ # network resides in another host project the network should specified in
35
+ # the form of projects/\\{host-project-id}/global/networks/\\{network}
36
+ # @!attribute [rw] ip_allocation
37
+ # @return [::String]
38
+ # The IP range in CIDR notation to use for the managed Data Fusion instance
39
+ # nodes. This range must not overlap with any other ranges used in the
40
+ # customer network.
41
+ class NetworkConfig
42
+ include ::Google::Protobuf::MessageExts
43
+ extend ::Google::Protobuf::MessageExts::ClassMethods
44
+ end
45
+
46
+ # The Data Fusion version. This proto message stores information about certain
47
+ # Data Fusion version, which is used for Data Fusion version upgrade.
48
+ # @!attribute [rw] version_number
49
+ # @return [::String]
50
+ # The version number of the Data Fusion instance, such as '6.0.1.0'.
51
+ # @!attribute [rw] default_version
52
+ # @return [::Boolean]
53
+ # Whether this is currently the default version for Cloud Data Fusion
54
+ # @!attribute [rw] available_features
55
+ # @return [::Array<::String>]
56
+ # Represents a list of available feature names for a given version.
57
+ class Version
58
+ include ::Google::Protobuf::MessageExts
59
+ extend ::Google::Protobuf::MessageExts::ClassMethods
60
+ end
61
+
62
+ # Identifies Data Fusion accelerators for an instance.
63
+ # @!attribute [rw] accelerator_type
64
+ # @return [::Google::Cloud::DataFusion::V1::Accelerator::AcceleratorType]
65
+ # The type of an accelator for a CDF instance.
66
+ # @!attribute [rw] state
67
+ # @return [::Google::Cloud::DataFusion::V1::Accelerator::State]
68
+ # The state of the accelerator
69
+ class Accelerator
70
+ include ::Google::Protobuf::MessageExts
71
+ extend ::Google::Protobuf::MessageExts::ClassMethods
72
+
73
+ # Each type represents an Accelerator (Add-On) supported by Cloud Data Fusion
74
+ # service.
75
+ module AcceleratorType
76
+ # Default value, if unspecified.
77
+ ACCELERATOR_TYPE_UNSPECIFIED = 0
78
+
79
+ # Change Data Capture accelerator for CDF.
80
+ CDC = 1
81
+
82
+ # Cloud Healthcare accelerator for CDF. This accelerator is to enable Cloud
83
+ # Healthcare specific CDF plugins developed by Healthcare team.
84
+ HEALTHCARE = 2
85
+
86
+ # Contact Center AI Insights
87
+ # This accelerator is used to enable import and export pipelines
88
+ # custom built to streamline CCAI Insights processing.
89
+ CCAI_INSIGHTS = 3
90
+ end
91
+
92
+ # Different values possible for the state of an accelerator
93
+ module State
94
+ # Default value, do not use
95
+ STATE_UNSPECIFIED = 0
96
+
97
+ # Indicates that the accelerator is enabled and available to use
98
+ ENABLED = 1
99
+
100
+ # Indicates that the accelerator is disabled and not available to use
101
+ DISABLED = 2
102
+
103
+ # Indicates that accelerator state is currently unknown.
104
+ # Requests for enable, disable could be retried while in this state
105
+ UNKNOWN = 3
106
+ end
107
+ end
108
+
109
+ # The crypto key configuration. This field is used by the Customer-managed
110
+ # encryption keys (CMEK) feature.
111
+ # @!attribute [rw] key_reference
112
+ # @return [::String]
113
+ # The name of the key which is used to encrypt/decrypt customer data. For key
114
+ # in Cloud KMS, the key should be in the format of
115
+ # `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
116
+ class CryptoKeyConfig
117
+ include ::Google::Protobuf::MessageExts
118
+ extend ::Google::Protobuf::MessageExts::ClassMethods
119
+ end
120
+
121
+ # Represents a Data Fusion instance.
122
+ # @!attribute [r] name
123
+ # @return [::String]
124
+ # Output only. The name of this instance is in the form of
125
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}.
126
+ # @!attribute [rw] description
127
+ # @return [::String]
128
+ # A description of this instance.
129
+ # @!attribute [rw] type
130
+ # @return [::Google::Cloud::DataFusion::V1::Instance::Type]
131
+ # Required. Instance type.
132
+ # @!attribute [rw] enable_stackdriver_logging
133
+ # @return [::Boolean]
134
+ # Option to enable Stackdriver Logging.
135
+ # @!attribute [rw] enable_stackdriver_monitoring
136
+ # @return [::Boolean]
137
+ # Option to enable Stackdriver Monitoring.
138
+ # @!attribute [rw] private_instance
139
+ # @return [::Boolean]
140
+ # Specifies whether the Data Fusion instance should be private. If set to
141
+ # true, all Data Fusion nodes will have private IP addresses and will not be
142
+ # able to access the public internet.
143
+ # @!attribute [rw] network_config
144
+ # @return [::Google::Cloud::DataFusion::V1::NetworkConfig]
145
+ # Network configuration options. These are required when a private Data
146
+ # Fusion instance is to be created.
147
+ # @!attribute [rw] labels
148
+ # @return [::Google::Protobuf::Map{::String => ::String}]
149
+ # The resource labels for instance to use to annotate any related underlying
150
+ # resources such as Compute Engine VMs. The character '=' is not allowed to
151
+ # be used within the labels.
152
+ # @!attribute [rw] options
153
+ # @return [::Google::Protobuf::Map{::String => ::String}]
154
+ # Map of additional options used to configure the behavior of
155
+ # Data Fusion instance.
156
+ # @!attribute [r] create_time
157
+ # @return [::Google::Protobuf::Timestamp]
158
+ # Output only. The time the instance was created.
159
+ # @!attribute [r] update_time
160
+ # @return [::Google::Protobuf::Timestamp]
161
+ # Output only. The time the instance was last updated.
162
+ # @!attribute [r] state
163
+ # @return [::Google::Cloud::DataFusion::V1::Instance::State]
164
+ # Output only. The current state of this Data Fusion instance.
165
+ # @!attribute [r] state_message
166
+ # @return [::String]
167
+ # Output only. Additional information about the current state of this Data
168
+ # Fusion instance if available.
169
+ # @!attribute [r] service_endpoint
170
+ # @return [::String]
171
+ # Output only. Endpoint on which the Data Fusion UI is accessible.
172
+ # @!attribute [rw] zone
173
+ # @return [::String]
174
+ # Name of the zone in which the Data Fusion instance will be created. Only
175
+ # DEVELOPER instances use this field.
176
+ # @!attribute [rw] version
177
+ # @return [::String]
178
+ # Current version of the Data Fusion. Only specifiable in Update.
179
+ # @!attribute [r] service_account
180
+ # @return [::String]
181
+ # Output only. Deprecated. Use tenant_project_id instead to extract the
182
+ # tenant project ID.
183
+ # @!attribute [rw] display_name
184
+ # @return [::String]
185
+ # Display name for an instance.
186
+ # @!attribute [rw] available_version
187
+ # @return [::Array<::Google::Cloud::DataFusion::V1::Version>]
188
+ # Available versions that the instance can be upgraded to using
189
+ # UpdateInstanceRequest.
190
+ # @!attribute [r] api_endpoint
191
+ # @return [::String]
192
+ # Output only. Endpoint on which the REST APIs is accessible.
193
+ # @!attribute [r] gcs_bucket
194
+ # @return [::String]
195
+ # Output only. Cloud Storage bucket generated by Data Fusion in the customer
196
+ # project.
197
+ # @!attribute [rw] accelerators
198
+ # @return [::Array<::Google::Cloud::DataFusion::V1::Accelerator>]
199
+ # List of accelerators enabled for this CDF instance.
200
+ # @!attribute [r] p4_service_account
201
+ # @return [::String]
202
+ # Output only. P4 service account for the customer project.
203
+ # @!attribute [r] tenant_project_id
204
+ # @return [::String]
205
+ # Output only. The name of the tenant project.
206
+ # @!attribute [rw] dataproc_service_account
207
+ # @return [::String]
208
+ # User-managed service account to set on Dataproc when Cloud Data Fusion
209
+ # creates Dataproc to run data processing pipelines.
210
+ #
211
+ # This allows users to have fine-grained access control on Dataproc's
212
+ # accesses to cloud resources.
213
+ # @!attribute [rw] enable_rbac
214
+ # @return [::Boolean]
215
+ # Option to enable granular role-based access control.
216
+ # @!attribute [rw] crypto_key_config
217
+ # @return [::Google::Cloud::DataFusion::V1::CryptoKeyConfig]
218
+ # The crypto key configuration. This field is used by the Customer-Managed
219
+ # Encryption Keys (CMEK) feature.
220
+ class Instance
221
+ include ::Google::Protobuf::MessageExts
222
+ extend ::Google::Protobuf::MessageExts::ClassMethods
223
+
224
+ # @!attribute [rw] key
225
+ # @return [::String]
226
+ # @!attribute [rw] value
227
+ # @return [::String]
228
+ class LabelsEntry
229
+ include ::Google::Protobuf::MessageExts
230
+ extend ::Google::Protobuf::MessageExts::ClassMethods
231
+ end
232
+
233
+ # @!attribute [rw] key
234
+ # @return [::String]
235
+ # @!attribute [rw] value
236
+ # @return [::String]
237
+ class OptionsEntry
238
+ include ::Google::Protobuf::MessageExts
239
+ extend ::Google::Protobuf::MessageExts::ClassMethods
240
+ end
241
+
242
+ # Represents the type of Data Fusion instance. Each type is configured with
243
+ # the default settings for processing and memory.
244
+ module Type
245
+ # No type specified. The instance creation will fail.
246
+ TYPE_UNSPECIFIED = 0
247
+
248
+ # Basic Data Fusion instance. In Basic type, the user will be able to
249
+ # create data pipelines using point and click UI. However, there are
250
+ # certain limitations, such as fewer number of concurrent pipelines, no
251
+ # support for streaming pipelines, etc.
252
+ BASIC = 1
253
+
254
+ # Enterprise Data Fusion instance. In Enterprise type, the user will have
255
+ # all features available, such as support for streaming pipelines, higher
256
+ # number of concurrent pipelines, etc.
257
+ ENTERPRISE = 2
258
+
259
+ # Developer Data Fusion instance. In Developer type, the user will have all
260
+ # features available but with restrictive capabilities. This is to help
261
+ # enterprises design and develop their data ingestion and integration
262
+ # pipelines at low cost.
263
+ DEVELOPER = 3
264
+ end
265
+
266
+ # Represents the state of a Data Fusion instance
267
+ module State
268
+ # Instance does not have a state yet
269
+ STATE_UNSPECIFIED = 0
270
+
271
+ # Instance is being created
272
+ CREATING = 1
273
+
274
+ # Instance is active and ready for requests. This corresponds to 'RUNNING'
275
+ # in datafusion.v1beta1.
276
+ ACTIVE = 2
277
+
278
+ # Instance creation failed
279
+ FAILED = 3
280
+
281
+ # Instance is being deleted
282
+ DELETING = 4
283
+
284
+ # Instance is being upgraded
285
+ UPGRADING = 5
286
+
287
+ # Instance is being restarted
288
+ RESTARTING = 6
289
+
290
+ # Instance is being updated on customer request
291
+ UPDATING = 7
292
+
293
+ # Instance is being auto-updated
294
+ AUTO_UPDATING = 8
295
+
296
+ # Instance is being auto-upgraded
297
+ AUTO_UPGRADING = 9
298
+ end
299
+ end
300
+
301
+ # Request message for listing Data Fusion instances.
302
+ # @!attribute [rw] parent
303
+ # @return [::String]
304
+ # The project and location for which to retrieve instance information
305
+ # in the format projects/\\{project}/locations/\\{location}. If the location is
306
+ # specified as '-' (wildcard), then all regions available to the project
307
+ # are queried, and the results are aggregated.
308
+ # @!attribute [rw] page_size
309
+ # @return [::Integer]
310
+ # The maximum number of items to return.
311
+ # @!attribute [rw] page_token
312
+ # @return [::String]
313
+ # The next_page_token value to use if there are additional
314
+ # results to retrieve for this list request.
315
+ # @!attribute [rw] filter
316
+ # @return [::String]
317
+ # List filter.
318
+ # @!attribute [rw] order_by
319
+ # @return [::String]
320
+ # Sort results. Supported values are "name", "name desc", or "" (unsorted).
321
+ class ListInstancesRequest
322
+ include ::Google::Protobuf::MessageExts
323
+ extend ::Google::Protobuf::MessageExts::ClassMethods
324
+ end
325
+
326
+ # Response message for the list instance request.
327
+ # @!attribute [rw] instances
328
+ # @return [::Array<::Google::Cloud::DataFusion::V1::Instance>]
329
+ # Represents a list of Data Fusion instances.
330
+ # @!attribute [rw] next_page_token
331
+ # @return [::String]
332
+ # Token to retrieve the next page of results or empty if there are no more
333
+ # results in the list.
334
+ # @!attribute [rw] unreachable
335
+ # @return [::Array<::String>]
336
+ # Locations that could not be reached.
337
+ class ListInstancesResponse
338
+ include ::Google::Protobuf::MessageExts
339
+ extend ::Google::Protobuf::MessageExts::ClassMethods
340
+ end
341
+
342
+ # Request message for the list available versions request.
343
+ # @!attribute [rw] parent
344
+ # @return [::String]
345
+ # Required. The project and location for which to retrieve instance
346
+ # information in the format projects/\\{project}/locations/\\{location}.
347
+ # @!attribute [rw] page_size
348
+ # @return [::Integer]
349
+ # The maximum number of items to return.
350
+ # @!attribute [rw] page_token
351
+ # @return [::String]
352
+ # The next_page_token value to use if there are additional
353
+ # results to retrieve for this list request.
354
+ # @!attribute [rw] latest_patch_only
355
+ # @return [::Boolean]
356
+ # Whether or not to return the latest patch of every available minor version.
357
+ # If true, only the latest patch will be returned. Ex. if allowed versions is
358
+ # [6.1.1, 6.1.2, 6.2.0] then response will be [6.1.2, 6.2.0]
359
+ class ListAvailableVersionsRequest
360
+ include ::Google::Protobuf::MessageExts
361
+ extend ::Google::Protobuf::MessageExts::ClassMethods
362
+ end
363
+
364
+ # Response message for the list available versions request.
365
+ # @!attribute [rw] available_versions
366
+ # @return [::Array<::Google::Cloud::DataFusion::V1::Version>]
367
+ # Represents a list of versions that are supported.
368
+ # @!attribute [rw] next_page_token
369
+ # @return [::String]
370
+ # Token to retrieve the next page of results or empty if there are no more
371
+ # results in the list.
372
+ class ListAvailableVersionsResponse
373
+ include ::Google::Protobuf::MessageExts
374
+ extend ::Google::Protobuf::MessageExts::ClassMethods
375
+ end
376
+
377
+ # Request message for getting details about a Data Fusion instance.
378
+ # @!attribute [rw] name
379
+ # @return [::String]
380
+ # The instance resource name in the format
381
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}.
382
+ class GetInstanceRequest
383
+ include ::Google::Protobuf::MessageExts
384
+ extend ::Google::Protobuf::MessageExts::ClassMethods
385
+ end
386
+
387
+ # Request message for creating a Data Fusion instance.
388
+ # @!attribute [rw] parent
389
+ # @return [::String]
390
+ # The instance's project and location in the format
391
+ # projects/\\{project}/locations/\\{location}.
392
+ # @!attribute [rw] instance_id
393
+ # @return [::String]
394
+ # The name of the instance to create.
395
+ # @!attribute [rw] instance
396
+ # @return [::Google::Cloud::DataFusion::V1::Instance]
397
+ # An instance resource.
398
+ class CreateInstanceRequest
399
+ include ::Google::Protobuf::MessageExts
400
+ extend ::Google::Protobuf::MessageExts::ClassMethods
401
+ end
402
+
403
+ # Request message for deleting a Data Fusion instance.
404
+ # @!attribute [rw] name
405
+ # @return [::String]
406
+ # The instance resource name in the format
407
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}
408
+ class DeleteInstanceRequest
409
+ include ::Google::Protobuf::MessageExts
410
+ extend ::Google::Protobuf::MessageExts::ClassMethods
411
+ end
412
+
413
+ # @!attribute [rw] instance
414
+ # @return [::Google::Cloud::DataFusion::V1::Instance]
415
+ # The instance resource that replaces the resource on the server. Currently,
416
+ # Data Fusion only allows replacing labels, options, and stack driver
417
+ # settings. All other fields will be ignored.
418
+ # @!attribute [rw] update_mask
419
+ # @return [::Google::Protobuf::FieldMask]
420
+ # Field mask is used to specify the fields that the update will overwrite
421
+ # in an instance resource. The fields specified in the update_mask are
422
+ # relative to the resource, not the full request.
423
+ # A field will be overwritten if it is in the mask.
424
+ # If the user does not provide a mask, all the supported fields (labels,
425
+ # options, and version currently) will be overwritten.
426
+ class UpdateInstanceRequest
427
+ include ::Google::Protobuf::MessageExts
428
+ extend ::Google::Protobuf::MessageExts::ClassMethods
429
+ end
430
+
431
+ # Request message for restarting a Data Fusion instance.
432
+ # @!attribute [rw] name
433
+ # @return [::String]
434
+ # Name of the Data Fusion instance which need to be restarted in the form of
435
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}
436
+ class RestartInstanceRequest
437
+ include ::Google::Protobuf::MessageExts
438
+ extend ::Google::Protobuf::MessageExts::ClassMethods
439
+ end
440
+
441
+ # Represents the metadata of a long-running operation.
442
+ # @!attribute [rw] create_time
443
+ # @return [::Google::Protobuf::Timestamp]
444
+ # The time the operation was created.
445
+ # @!attribute [rw] end_time
446
+ # @return [::Google::Protobuf::Timestamp]
447
+ # The time the operation finished running.
448
+ # @!attribute [rw] target
449
+ # @return [::String]
450
+ # Server-defined resource path for the target of the operation.
451
+ # @!attribute [rw] verb
452
+ # @return [::String]
453
+ # Name of the verb executed by the operation.
454
+ # @!attribute [rw] status_detail
455
+ # @return [::String]
456
+ # Human-readable status of the operation if any.
457
+ # @!attribute [rw] requested_cancellation
458
+ # @return [::Boolean]
459
+ # Identifies whether the user has requested cancellation
460
+ # of the operation. Operations that have successfully been cancelled
461
+ # have [Operation.error][] value with a
462
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of 1, corresponding to
463
+ # `Code.CANCELLED`.
464
+ # @!attribute [rw] api_version
465
+ # @return [::String]
466
+ # API version used to start the operation.
467
+ # @!attribute [rw] additional_status
468
+ # @return [::Google::Protobuf::Map{::String => ::String}]
469
+ # Map to hold any additional status info for the operation
470
+ # If there is an accelerator being enabled/disabled/deleted, this will be
471
+ # populated with accelerator name as key and status as
472
+ # ENABLING, DISABLING or DELETING
473
+ class OperationMetadata
474
+ include ::Google::Protobuf::MessageExts
475
+ extend ::Google::Protobuf::MessageExts::ClassMethods
476
+
477
+ # @!attribute [rw] key
478
+ # @return [::String]
479
+ # @!attribute [rw] value
480
+ # @return [::String]
481
+ class AdditionalStatusEntry
482
+ include ::Google::Protobuf::MessageExts
483
+ extend ::Google::Protobuf::MessageExts::ClassMethods
484
+ end
485
+ end
486
+ end
487
+ end
488
+ end
489
+ end