google-cloud-data_fusion-v1 0.1.0

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