Committer: @alexander-fenster PiperOrigin-RevId: 382167046pull/662/head
parent
513440fda5
commit
6797726dcf
8 changed files with 2166 additions and 0 deletions
@ -0,0 +1,337 @@ |
||||
# This file was automatically generated by BuildFileGenerator |
||||
# https://github.com/googleapis/rules_gapic/tree/master/bazel |
||||
|
||||
# Most of the manual changes to this file will be overwritten. |
||||
# It's **only** allowed to change the following rule attribute values: |
||||
# - names of *_gapic_assembly_* rules |
||||
# - certain parameters of *_gapic_library rules, including but not limited to: |
||||
# * extra_protoc_parameters |
||||
# * extra_protoc_file_parameters |
||||
# The complete list of preserved parameters can be found in the source code. |
||||
|
||||
# This is an API workspace, having public visibility by default makes perfect sense. |
||||
package(default_visibility = ["//visibility:public"]) |
||||
|
||||
############################################################################## |
||||
# Common |
||||
############################################################################## |
||||
load("@rules_proto//proto:defs.bzl", "proto_library") |
||||
load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") |
||||
|
||||
proto_library( |
||||
name = "datafusion_proto", |
||||
srcs = [ |
||||
"datafusion.proto", |
||||
], |
||||
deps = [ |
||||
"//google/api:annotations_proto", |
||||
"//google/api:client_proto", |
||||
"//google/api:field_behavior_proto", |
||||
"//google/api:resource_proto", |
||||
"//google/longrunning:operations_proto", |
||||
"@com_google_protobuf//:field_mask_proto", |
||||
"@com_google_protobuf//:timestamp_proto", |
||||
], |
||||
) |
||||
|
||||
proto_library_with_info( |
||||
name = "datafusion_proto_with_info", |
||||
deps = [ |
||||
":datafusion_proto", |
||||
"//google/cloud:common_resources_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Java |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"java_gapic_assembly_gradle_pkg", |
||||
"java_gapic_library", |
||||
"java_gapic_test", |
||||
"java_grpc_library", |
||||
"java_proto_library", |
||||
) |
||||
|
||||
java_proto_library( |
||||
name = "datafusion_java_proto", |
||||
deps = [":datafusion_proto"], |
||||
) |
||||
|
||||
java_grpc_library( |
||||
name = "datafusion_java_grpc", |
||||
srcs = [":datafusion_proto"], |
||||
deps = [":datafusion_java_proto"], |
||||
) |
||||
|
||||
java_gapic_library( |
||||
name = "datafusion_java_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
test_deps = [ |
||||
":datafusion_java_grpc", |
||||
], |
||||
deps = [ |
||||
":datafusion_java_proto", |
||||
], |
||||
) |
||||
|
||||
java_gapic_test( |
||||
name = "datafusion_java_gapic_test_suite", |
||||
test_classes = [ |
||||
"com.google.cloud.datafusion.v1.DataFusionClientTest", |
||||
], |
||||
runtime_deps = [":datafusion_java_gapic_test"], |
||||
) |
||||
|
||||
# Open Source Packages |
||||
java_gapic_assembly_gradle_pkg( |
||||
name = "google-cloud-datafusion-v1-java", |
||||
deps = [ |
||||
":datafusion_java_gapic", |
||||
":datafusion_java_grpc", |
||||
":datafusion_java_proto", |
||||
":datafusion_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Go |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"go_gapic_assembly_pkg", |
||||
"go_gapic_library", |
||||
"go_proto_library", |
||||
"go_test", |
||||
) |
||||
|
||||
go_proto_library( |
||||
name = "datafusion_go_proto", |
||||
compilers = ["@io_bazel_rules_go//proto:go_grpc"], |
||||
importpath = "google.golang.org/genproto/googleapis/cloud/datafusion/v1", |
||||
protos = [":datafusion_proto"], |
||||
deps = [ |
||||
"//google/api:annotations_go_proto", |
||||
"//google/longrunning:longrunning_go_proto", |
||||
], |
||||
) |
||||
|
||||
go_gapic_library( |
||||
name = "datafusion_go_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
importpath = "cloud.google.com/go/datafusion/apiv1;datafusion", |
||||
metadata = True, |
||||
service_yaml = "datafusion_v1.yaml", |
||||
deps = [ |
||||
":datafusion_go_proto", |
||||
"//google/longrunning:longrunning_go_proto", |
||||
"@com_google_cloud_go//longrunning:go_default_library", |
||||
"@com_google_cloud_go//longrunning/autogen:go_default_library", |
||||
], |
||||
) |
||||
|
||||
go_test( |
||||
name = "datafusion_go_gapic_test", |
||||
srcs = [":datafusion_go_gapic_srcjar_test"], |
||||
embed = [":datafusion_go_gapic"], |
||||
importpath = "cloud.google.com/go/datafusion/apiv1", |
||||
) |
||||
|
||||
# Open Source Packages |
||||
go_gapic_assembly_pkg( |
||||
name = "gapi-cloud-datafusion-v1-go", |
||||
deps = [ |
||||
":datafusion_go_gapic", |
||||
":datafusion_go_gapic_srcjar-metadata.srcjar", |
||||
":datafusion_go_gapic_srcjar-test.srcjar", |
||||
":datafusion_go_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Python |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"py_gapic_assembly_pkg", |
||||
"py_gapic_library", |
||||
) |
||||
|
||||
py_gapic_library( |
||||
name = "datafusion_py_gapic", |
||||
srcs = [":datafusion_proto"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
) |
||||
|
||||
# Open Source Packages |
||||
py_gapic_assembly_pkg( |
||||
name = "datafusion-v1-py", |
||||
deps = [ |
||||
":datafusion_py_gapic", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# PHP |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"php_gapic_assembly_pkg", |
||||
"php_gapic_library", |
||||
"php_grpc_library", |
||||
"php_proto_library", |
||||
) |
||||
|
||||
php_proto_library( |
||||
name = "datafusion_php_proto", |
||||
deps = [":datafusion_proto"], |
||||
) |
||||
|
||||
php_grpc_library( |
||||
name = "datafusion_php_grpc", |
||||
srcs = [":datafusion_proto"], |
||||
deps = [":datafusion_php_proto"], |
||||
) |
||||
|
||||
php_gapic_library( |
||||
name = "datafusion_php_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
service_yaml = "datafusion_v1.yaml", |
||||
deps = [ |
||||
":datafusion_php_grpc", |
||||
":datafusion_php_proto", |
||||
], |
||||
) |
||||
|
||||
# Open Source Packages |
||||
php_gapic_assembly_pkg( |
||||
name = "google-cloud-datafusion-v1-php", |
||||
deps = [ |
||||
":datafusion_php_gapic", |
||||
":datafusion_php_grpc", |
||||
":datafusion_php_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Node.js |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"nodejs_gapic_assembly_pkg", |
||||
"nodejs_gapic_library", |
||||
) |
||||
|
||||
nodejs_gapic_library( |
||||
name = "datafusion_nodejs_gapic", |
||||
package_name = "@google-cloud/datafusion", |
||||
src = ":datafusion_proto_with_info", |
||||
extra_protoc_parameters = ["metadata"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
package = "google.cloud.datafusion.v1", |
||||
service_yaml = "datafusion_v1.yaml", |
||||
deps = [], |
||||
) |
||||
|
||||
nodejs_gapic_assembly_pkg( |
||||
name = "datafusion-v1-nodejs", |
||||
deps = [ |
||||
":datafusion_nodejs_gapic", |
||||
":datafusion_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Ruby |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"ruby_cloud_gapic_library", |
||||
"ruby_gapic_assembly_pkg", |
||||
"ruby_grpc_library", |
||||
"ruby_proto_library", |
||||
) |
||||
|
||||
ruby_proto_library( |
||||
name = "datafusion_ruby_proto", |
||||
deps = [":datafusion_proto"], |
||||
) |
||||
|
||||
ruby_grpc_library( |
||||
name = "datafusion_ruby_grpc", |
||||
srcs = [":datafusion_proto"], |
||||
deps = [":datafusion_ruby_proto"], |
||||
) |
||||
|
||||
ruby_cloud_gapic_library( |
||||
name = "datafusion_ruby_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-datafusion-v1"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
deps = [ |
||||
":datafusion_ruby_grpc", |
||||
":datafusion_ruby_proto", |
||||
], |
||||
) |
||||
|
||||
# Open Source Packages |
||||
ruby_gapic_assembly_pkg( |
||||
name = "google-cloud-datafusion-v1-ruby", |
||||
deps = [ |
||||
":datafusion_ruby_gapic", |
||||
":datafusion_ruby_grpc", |
||||
":datafusion_ruby_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# C# |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"csharp_gapic_assembly_pkg", |
||||
"csharp_gapic_library", |
||||
"csharp_grpc_library", |
||||
"csharp_proto_library", |
||||
) |
||||
|
||||
csharp_proto_library( |
||||
name = "datafusion_csharp_proto", |
||||
deps = [":datafusion_proto"], |
||||
) |
||||
|
||||
csharp_grpc_library( |
||||
name = "datafusion_csharp_grpc", |
||||
srcs = [":datafusion_proto"], |
||||
deps = [":datafusion_csharp_proto"], |
||||
) |
||||
|
||||
csharp_gapic_library( |
||||
name = "datafusion_csharp_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
deps = [ |
||||
":datafusion_csharp_grpc", |
||||
":datafusion_csharp_proto", |
||||
], |
||||
) |
||||
|
||||
# Open Source Packages |
||||
csharp_gapic_assembly_pkg( |
||||
name = "google-cloud-datafusion-v1-csharp", |
||||
deps = [ |
||||
":datafusion_csharp_gapic", |
||||
":datafusion_csharp_grpc", |
||||
":datafusion_csharp_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# C++ |
||||
############################################################################## |
||||
# Put your C++ rules here |
@ -0,0 +1,519 @@ |
||||
// Copyright 2021 Google LLC |
||||
// |
||||
// Licensed under the Apache License, Version 2.0 (the "License"); |
||||
// you may not use this file except in compliance with the License. |
||||
// You may obtain a copy of the License at |
||||
// |
||||
// http://www.apache.org/licenses/LICENSE-2.0 |
||||
// |
||||
// Unless required by applicable law or agreed to in writing, software |
||||
// distributed under the License is distributed on an "AS IS" BASIS, |
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
// See the License for the specific language governing permissions and |
||||
// limitations under the License. |
||||
|
||||
syntax = "proto3"; |
||||
|
||||
package google.cloud.datafusion.v1; |
||||
|
||||
import "google/api/annotations.proto"; |
||||
import "google/api/client.proto"; |
||||
import "google/api/field_behavior.proto"; |
||||
import "google/api/resource.proto"; |
||||
import "google/longrunning/operations.proto"; |
||||
import "google/protobuf/field_mask.proto"; |
||||
import "google/protobuf/timestamp.proto"; |
||||
|
||||
option csharp_namespace = "Google.Cloud.DataFusion.V1"; |
||||
option go_package = "google.golang.org/genproto/googleapis/cloud/datafusion/v1;datafusion"; |
||||
option java_multiple_files = true; |
||||
option java_package = "com.google.cloud.datafusion.v1"; |
||||
option php_namespace = "Google\\Cloud\\DataFusion\\V1"; |
||||
option ruby_package = "Google::Cloud::DataFusion::V1"; |
||||
|
||||
// Service for creating and managing Data Fusion instances. |
||||
// Data Fusion enables ETL developers to build code-free, data integration |
||||
// pipelines via a point-and-click UI. |
||||
service DataFusion { |
||||
option (google.api.default_host) = "datafusion.googleapis.com"; |
||||
option (google.api.oauth_scopes) = |
||||
"https://www.googleapis.com/auth/cloud-platform"; |
||||
|
||||
// Lists possible versions for Data Fusion instances in the specified project |
||||
// and location. |
||||
rpc ListAvailableVersions(ListAvailableVersionsRequest) |
||||
returns (ListAvailableVersionsResponse) { |
||||
option (google.api.http) = { |
||||
get: "/v1/{parent=projects/*/locations/*}/versions" |
||||
}; |
||||
option (google.api.method_signature) = "parent"; |
||||
} |
||||
|
||||
// Lists Data Fusion instances in the specified project and location. |
||||
rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) { |
||||
option (google.api.http) = { |
||||
get: "/v1/{parent=projects/*/locations/*}/instances" |
||||
}; |
||||
} |
||||
|
||||
// Gets details of a single Data Fusion instance. |
||||
rpc GetInstance(GetInstanceRequest) returns (Instance) { |
||||
option (google.api.http) = { |
||||
get: "/v1/{name=projects/*/locations/*/instances/*}" |
||||
}; |
||||
} |
||||
|
||||
// Creates a new Data Fusion instance in the specified project and location. |
||||
rpc CreateInstance(CreateInstanceRequest) |
||||
returns (google.longrunning.Operation) { |
||||
option (google.api.http) = { |
||||
post: "/v1/{parent=projects/*/locations/*}/instances" |
||||
body: "instance" |
||||
}; |
||||
option (google.api.method_signature) = "parent,instance,instance_id"; |
||||
option (google.longrunning.operation_info) = { |
||||
response_type: "Instance" |
||||
metadata_type: "OperationMetadata" |
||||
}; |
||||
} |
||||
|
||||
// Deletes a single Date Fusion instance. |
||||
rpc DeleteInstance(DeleteInstanceRequest) |
||||
returns (google.longrunning.Operation) { |
||||
option (google.api.http) = { |
||||
delete: "/v1/{name=projects/*/locations/*/instances/*}" |
||||
}; |
||||
option (google.api.method_signature) = "name"; |
||||
option (google.longrunning.operation_info) = { |
||||
response_type: "google.protobuf.Empty" |
||||
metadata_type: "OperationMetadata" |
||||
}; |
||||
} |
||||
|
||||
// Updates a single Data Fusion instance. |
||||
rpc UpdateInstance(UpdateInstanceRequest) |
||||
returns (google.longrunning.Operation) { |
||||
option (google.api.http) = { |
||||
patch: "/v1/{instance.name=projects/*/locations/*/instances/*}" |
||||
body: "instance" |
||||
}; |
||||
option (google.api.method_signature) = "instance,update_mask"; |
||||
option (google.longrunning.operation_info) = { |
||||
response_type: "Instance" |
||||
metadata_type: "OperationMetadata" |
||||
}; |
||||
} |
||||
|
||||
// Restart a single Data Fusion instance. |
||||
// At the end of an operation instance is fully restarted. |
||||
rpc RestartInstance(RestartInstanceRequest) |
||||
returns (google.longrunning.Operation) { |
||||
option (google.api.http) = { |
||||
post: "/v1/{name=projects/*/locations/*/instances/*}:restart" |
||||
body: "*" |
||||
}; |
||||
option (google.longrunning.operation_info) = { |
||||
response_type: "Instance" |
||||
metadata_type: "OperationMetadata" |
||||
}; |
||||
} |
||||
} |
||||
|
||||
// Network configuration for a Data Fusion instance. These configurations |
||||
// are used for peering with the customer network. Configurations are optional |
||||
// when a public Data Fusion instance is to be created. However, providing |
||||
// these configurations allows several benefits, such as reduced network latency |
||||
// while accessing the customer resources from managed Data Fusion instance |
||||
// nodes, as well as access to the customer on-prem resources. |
||||
message NetworkConfig { |
||||
// Name of the network in the customer project with which the Tenant Project |
||||
// will be peered for executing pipelines. In case of shared VPC where the |
||||
// network resides in another host project the network should specified in |
||||
// the form of projects/{host-project-id}/global/networks/{network} |
||||
string network = 1; |
||||
|
||||
// The IP range in CIDR notation to use for the managed Data Fusion instance |
||||
// nodes. This range must not overlap with any other ranges used in the |
||||
// customer network. |
||||
string ip_allocation = 2; |
||||
} |
||||
|
||||
// The Data Fusion version. This proto message stores information about certain |
||||
// Data Fusion version, which is used for Data Fusion version upgrade. |
||||
message Version { |
||||
// The version number of the Data Fusion instance, such as '6.0.1.0'. |
||||
string version_number = 1; |
||||
|
||||
// Whether this is currently the default version for Cloud Data Fusion |
||||
bool default_version = 2; |
||||
|
||||
// Represents a list of available feature names for a given version. |
||||
repeated string available_features = 3; |
||||
} |
||||
|
||||
// Identifies Data Fusion accelerators for an instance. |
||||
message Accelerator { |
||||
// Each type represents an Accelerator (Add-On) supported by Cloud Data Fusion |
||||
// service. |
||||
enum AcceleratorType { |
||||
// Default value, if unspecified. |
||||
ACCELERATOR_TYPE_UNSPECIFIED = 0; |
||||
|
||||
// Change Data Capture accelerator for CDF. |
||||
CDC = 1; |
||||
|
||||
// Cloud Healthcare accelerator for CDF. This accelerator is to enable Cloud |
||||
// Healthcare specific CDF plugins developed by Healthcare team. |
||||
HEALTHCARE = 2; |
||||
|
||||
// Contact Center AI Insights |
||||
// This accelerator is used to enable import and export pipelines |
||||
// custom built to streamline CCAI Insights processing. |
||||
CCAI_INSIGHTS = 3; |
||||
} |
||||
|
||||
// Different values possible for the state of an accelerator |
||||
enum State { |
||||
// Default value, do not use |
||||
STATE_UNSPECIFIED = 0; |
||||
|
||||
// Indicates that the accelerator is enabled and available to use |
||||
ENABLED = 1; |
||||
|
||||
// Indicates that the accelerator is disabled and not available to use |
||||
DISABLED = 2; |
||||
|
||||
// Indicates that accelerator state is currently unknown. |
||||
// Requests for enable, disable could be retried while in this state |
||||
UNKNOWN = 3; |
||||
} |
||||
|
||||
// The type of an accelator for a CDF instance. |
||||
AcceleratorType accelerator_type = 1; |
||||
|
||||
// The state of the accelerator |
||||
State state = 2; |
||||
} |
||||
|
||||
// The crypto key configuration. This field is used by the Customer-managed |
||||
// encryption keys (CMEK) feature. |
||||
message CryptoKeyConfig { |
||||
// The name of the key which is used to encrypt/decrypt customer data. For key |
||||
// in Cloud KMS, the key should be in the format of |
||||
// `projects/*/locations/*/keyRings/*/cryptoKeys/*`. |
||||
string key_reference = 1; |
||||
} |
||||
|
||||
// Represents a Data Fusion instance. |
||||
message Instance { |
||||
option (google.api.resource) = { |
||||
type: "datafusion.googleapis.com/Instance" |
||||
pattern: "projects/{project}/locations/{location}/instances/{instance}" |
||||
}; |
||||
|
||||
// Represents the type of Data Fusion instance. Each type is configured with |
||||
// the default settings for processing and memory. |
||||
enum Type { |
||||
// No type specified. The instance creation will fail. |
||||
TYPE_UNSPECIFIED = 0; |
||||
|
||||
// Basic Data Fusion instance. In Basic type, the user will be able to |
||||
// create data pipelines using point and click UI. However, there are |
||||
// certain limitations, such as fewer number of concurrent pipelines, no |
||||
// support for streaming pipelines, etc. |
||||
BASIC = 1; |
||||
|
||||
// Enterprise Data Fusion instance. In Enterprise type, the user will have |
||||
// all features available, such as support for streaming pipelines, higher |
||||
// number of concurrent pipelines, etc. |
||||
ENTERPRISE = 2; |
||||
|
||||
// Developer Data Fusion instance. In Developer type, the user will have all |
||||
// features available but with restrictive capabilities. This is to help |
||||
// enterprises design and develop their data ingestion and integration |
||||
// pipelines at low cost. |
||||
DEVELOPER = 3; |
||||
} |
||||
|
||||
// Represents the state of a Data Fusion instance |
||||
enum State { |
||||
// Instance does not have a state yet |
||||
STATE_UNSPECIFIED = 0; |
||||
|
||||
// Instance is being created |
||||
CREATING = 1; |
||||
|
||||
// Instance is active and ready for requests. This corresponds to 'RUNNING' |
||||
// in datafusion.v1beta1. |
||||
ACTIVE = 2; |
||||
|
||||
// Instance creation failed |
||||
FAILED = 3; |
||||
|
||||
// Instance is being deleted |
||||
DELETING = 4; |
||||
|
||||
// Instance is being upgraded |
||||
UPGRADING = 5; |
||||
|
||||
// Instance is being restarted |
||||
RESTARTING = 6; |
||||
|
||||
// Instance is being updated on customer request |
||||
UPDATING = 7; |
||||
|
||||
// Instance is being auto-updated |
||||
AUTO_UPDATING = 8; |
||||
|
||||
// Instance is being auto-upgraded |
||||
AUTO_UPGRADING = 9; |
||||
} |
||||
|
||||
// Output only. The name of this instance is in the form of |
||||
// projects/{project}/locations/{location}/instances/{instance}. |
||||
string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// A description of this instance. |
||||
string description = 2; |
||||
|
||||
// Required. Instance type. |
||||
Type type = 3 [(google.api.field_behavior) = REQUIRED]; |
||||
|
||||
// Option to enable Stackdriver Logging. |
||||
bool enable_stackdriver_logging = 4; |
||||
|
||||
// Option to enable Stackdriver Monitoring. |
||||
bool enable_stackdriver_monitoring = 5; |
||||
|
||||
// Specifies whether the Data Fusion instance should be private. If set to |
||||
// true, all Data Fusion nodes will have private IP addresses and will not be |
||||
// able to access the public internet. |
||||
bool private_instance = 6; |
||||
|
||||
// Network configuration options. These are required when a private Data |
||||
// Fusion instance is to be created. |
||||
NetworkConfig network_config = 7; |
||||
|
||||
// The resource labels for instance to use to annotate any related underlying |
||||
// resources such as Compute Engine VMs. The character '=' is not allowed to |
||||
// be used within the labels. |
||||
map<string, string> labels = 8; |
||||
|
||||
// Map of additional options used to configure the behavior of |
||||
// Data Fusion instance. |
||||
map<string, string> options = 9; |
||||
|
||||
// Output only. The time the instance was created. |
||||
google.protobuf.Timestamp create_time = 10 |
||||
[(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. The time the instance was last updated. |
||||
google.protobuf.Timestamp update_time = 11 |
||||
[(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. The current state of this Data Fusion instance. |
||||
State state = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. Additional information about the current state of this Data |
||||
// Fusion instance if available. |
||||
string state_message = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. Endpoint on which the Data Fusion UI is accessible. |
||||
string service_endpoint = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Name of the zone in which the Data Fusion instance will be created. Only |
||||
// DEVELOPER instances use this field. |
||||
string zone = 15; |
||||
|
||||
// Current version of the Data Fusion. Only specifiable in Update. |
||||
string version = 16; |
||||
|
||||
// Output only. Deprecated. Use tenant_project_id instead to extract the |
||||
// tenant project ID. |
||||
string service_account = 17 |
||||
[deprecated = true, (google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Display name for an instance. |
||||
string display_name = 18; |
||||
|
||||
// Available versions that the instance can be upgraded to using |
||||
// UpdateInstanceRequest. |
||||
repeated Version available_version = 19; |
||||
|
||||
// Output only. Endpoint on which the REST APIs is accessible. |
||||
string api_endpoint = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. Cloud Storage bucket generated by Data Fusion in the customer |
||||
// project. |
||||
string gcs_bucket = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// List of accelerators enabled for this CDF instance. |
||||
repeated Accelerator accelerators = 22; |
||||
|
||||
// Output only. P4 service account for the customer project. |
||||
string p4_service_account = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. The name of the tenant project. |
||||
string tenant_project_id = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// User-managed service account to set on Dataproc when Cloud Data Fusion |
||||
// creates Dataproc to run data processing pipelines. |
||||
// |
||||
// This allows users to have fine-grained access control on Dataproc's |
||||
// accesses to cloud resources. |
||||
string dataproc_service_account = 25; |
||||
|
||||
// Option to enable granular role-based access control. |
||||
bool enable_rbac = 27; |
||||
|
||||
// The crypto key configuration. This field is used by the Customer-Managed |
||||
// Encryption Keys (CMEK) feature. |
||||
CryptoKeyConfig crypto_key_config = 28; |
||||
} |
||||
|
||||
// Request message for listing Data Fusion instances. |
||||
message ListInstancesRequest { |
||||
// The project and location for which to retrieve instance information |
||||
// in the format projects/{project}/locations/{location}. If the location is |
||||
// specified as '-' (wildcard), then all regions available to the project |
||||
// are queried, and the results are aggregated. |
||||
string parent = 1; |
||||
|
||||
// The maximum number of items to return. |
||||
int32 page_size = 2; |
||||
|
||||
// The next_page_token value to use if there are additional |
||||
// results to retrieve for this list request. |
||||
string page_token = 3; |
||||
|
||||
// List filter. |
||||
string filter = 4; |
||||
|
||||
// Sort results. Supported values are "name", "name desc", or "" (unsorted). |
||||
string order_by = 5; |
||||
} |
||||
|
||||
// Response message for the list instance request. |
||||
message ListInstancesResponse { |
||||
// Represents a list of Data Fusion instances. |
||||
repeated Instance instances = 1; |
||||
|
||||
// Token to retrieve the next page of results or empty if there are no more |
||||
// results in the list. |
||||
string next_page_token = 2; |
||||
|
||||
// Locations that could not be reached. |
||||
repeated string unreachable = 3; |
||||
} |
||||
|
||||
// Request message for the list available versions request. |
||||
message ListAvailableVersionsRequest { |
||||
// Required. The project and location for which to retrieve instance |
||||
// information in the format projects/{project}/locations/{location}. |
||||
string parent = 1 [(google.api.field_behavior) = REQUIRED]; |
||||
|
||||
// The maximum number of items to return. |
||||
int32 page_size = 2; |
||||
|
||||
// The next_page_token value to use if there are additional |
||||
// results to retrieve for this list request. |
||||
string page_token = 3; |
||||
|
||||
// Whether or not to return the latest patch of every available minor version. |
||||
// If true, only the latest patch will be returned. Ex. if allowed versions is |
||||
// [6.1.1, 6.1.2, 6.2.0] then response will be [6.1.2, 6.2.0] |
||||
bool latest_patch_only = 4; |
||||
} |
||||
|
||||
// Response message for the list available versions request. |
||||
message ListAvailableVersionsResponse { |
||||
// Represents a list of versions that are supported. |
||||
repeated Version available_versions = 1; |
||||
|
||||
// Token to retrieve the next page of results or empty if there are no more |
||||
// results in the list. |
||||
string next_page_token = 2; |
||||
} |
||||
|
||||
// Request message for getting details about a Data Fusion instance. |
||||
message GetInstanceRequest { |
||||
// The instance resource name in the format |
||||
// projects/{project}/locations/{location}/instances/{instance}. |
||||
string name = 1; |
||||
} |
||||
|
||||
// Request message for creating a Data Fusion instance. |
||||
message CreateInstanceRequest { |
||||
// The instance's project and location in the format |
||||
// projects/{project}/locations/{location}. |
||||
string parent = 1; |
||||
|
||||
// The name of the instance to create. |
||||
string instance_id = 2; |
||||
|
||||
// An instance resource. |
||||
Instance instance = 3; |
||||
} |
||||
|
||||
// Request message for deleting a Data Fusion instance. |
||||
message DeleteInstanceRequest { |
||||
// The instance resource name in the format |
||||
// projects/{project}/locations/{location}/instances/{instance} |
||||
string name = 1; |
||||
} |
||||
|
||||
message UpdateInstanceRequest { |
||||
// The instance resource that replaces the resource on the server. Currently, |
||||
// Data Fusion only allows replacing labels, options, and stack driver |
||||
// settings. All other fields will be ignored. |
||||
Instance instance = 1; |
||||
|
||||
// Field mask is used to specify the fields that the update will overwrite |
||||
// in an instance resource. The fields specified in the update_mask are |
||||
// relative to the resource, not the full request. |
||||
// A field will be overwritten if it is in the mask. |
||||
// If the user does not provide a mask, all the supported fields (labels, |
||||
// options, and version currently) will be overwritten. |
||||
google.protobuf.FieldMask update_mask = 2; |
||||
} |
||||
|
||||
// Request message for restarting a Data Fusion instance. |
||||
message RestartInstanceRequest { |
||||
// Name of the Data Fusion instance which need to be restarted in the form of |
||||
// projects/{project}/locations/{location}/instances/{instance} |
||||
string name = 1; |
||||
} |
||||
|
||||
// Represents the metadata of a long-running operation. |
||||
message OperationMetadata { |
||||
// The time the operation was created. |
||||
google.protobuf.Timestamp create_time = 1; |
||||
|
||||
// The time the operation finished running. |
||||
google.protobuf.Timestamp end_time = 2; |
||||
|
||||
// Server-defined resource path for the target of the operation. |
||||
string target = 3; |
||||
|
||||
// Name of the verb executed by the operation. |
||||
string verb = 4; |
||||
|
||||
// Human-readable status of the operation if any. |
||||
string status_detail = 5; |
||||
|
||||
// Identifies whether the user has requested cancellation |
||||
// of the operation. Operations that have successfully been cancelled |
||||
// have [Operation.error][] value with a |
||||
// [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to |
||||
// `Code.CANCELLED`. |
||||
bool requested_cancellation = 6; |
||||
|
||||
// API version used to start the operation. |
||||
string api_version = 7; |
||||
|
||||
// Map to hold any additional status info for the operation |
||||
// If there is an accelerator being enabled/disabled/deleted, this will be |
||||
// populated with accelerator name as key and status as |
||||
// ENABLING, DISABLING or DELETING |
||||
map<string, string> additional_status = 8; |
||||
} |
@ -0,0 +1,12 @@ |
||||
{ |
||||
"methodConfig": [ |
||||
{ |
||||
"name": [ |
||||
{ |
||||
"service": "google.cloud.datafusion.v1.DataFusion" |
||||
} |
||||
], |
||||
"timeout": "60s" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,111 @@ |
||||
type: google.api.Service |
||||
config_version: 3 |
||||
name: datafusion.googleapis.com |
||||
title: Cloud Data Fusion API |
||||
|
||||
apis: |
||||
- name: google.cloud.datafusion.v1.DataFusion |
||||
|
||||
types: |
||||
- name: google.cloud.datafusion.v1.OperationMetadata |
||||
|
||||
documentation: |
||||
summary: |- |
||||
Cloud Data Fusion is a fully-managed, cloud native, enterprise data |
||||
integration service for quickly building and managing data pipelines. |
||||
It provides a graphical interface to increase time efficiency and |
||||
reduce complexity, and allows business users, developers, and data |
||||
scientists to easily and reliably build scalable data integration |
||||
solutions to cleanse, prepare, blend, transfer and transform data |
||||
without having to wrestle with infrastructure. |
||||
rules: |
||||
- selector: google.cloud.location.Locations.GetLocation |
||||
description: Gets information about a location. |
||||
|
||||
- selector: google.cloud.location.Locations.ListLocations |
||||
description: Lists information about the supported locations for this service. |
||||
|
||||
- selector: google.iam.v1.IAMPolicy.GetIamPolicy |
||||
description: |- |
||||
Gets the access control policy for a resource. Returns an empty policy |
||||
if the resource exists and does not have a policy set. |
||||
|
||||
- selector: google.iam.v1.IAMPolicy.SetIamPolicy |
||||
description: |- |
||||
Sets the access control policy on the specified resource. Replaces |
||||
any existing policy. |
||||
|
||||
Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` |
||||
errors. |
||||
|
||||
- selector: google.iam.v1.IAMPolicy.TestIamPermissions |
||||
description: |- |
||||
Returns permissions that a caller has on the specified resource. If the |
||||
resource does not exist, this will return an empty set of |
||||
permissions, not a `NOT_FOUND` error. |
||||
|
||||
Note: This operation is designed to be used for building |
||||
permission-aware UIs and command-line tools, not for authorization |
||||
checking. This operation may "fail open" without warning. |
||||
|
||||
backend: |
||||
rules: |
||||
- selector: 'google.cloud.datafusion.v1.DataFusion.*' |
||||
deadline: 60.0 |
||||
- selector: google.cloud.location.Locations.GetLocation |
||||
deadline: 60.0 |
||||
- selector: google.cloud.location.Locations.ListLocations |
||||
deadline: 60.0 |
||||
- selector: 'google.iam.v1.IAMPolicy.*' |
||||
deadline: 60.0 |
||||
- selector: 'google.longrunning.Operations.*' |
||||
deadline: 60.0 |
||||
- selector: google.longrunning.Operations.GetOperation |
||||
deadline: 5.0 |
||||
|
||||
http: |
||||
rules: |
||||
- selector: google.cloud.location.Locations.GetLocation |
||||
get: '/v1/{name=projects/*/locations/*}' |
||||
- selector: google.cloud.location.Locations.ListLocations |
||||
get: '/v1/{name=projects/*}/locations' |
||||
- selector: google.iam.v1.IAMPolicy.GetIamPolicy |
||||
get: '/v1/{resource=projects/*/locations/*/instances/*}:getIamPolicy' |
||||
- selector: google.iam.v1.IAMPolicy.SetIamPolicy |
||||
post: '/v1/{resource=projects/*/locations/*/instances/*}:setIamPolicy' |
||||
body: '*' |
||||
- selector: google.iam.v1.IAMPolicy.TestIamPermissions |
||||
post: '/v1/{resource=projects/*/locations/*/instances/*}:testIamPermissions' |
||||
body: '*' |
||||
- selector: google.longrunning.Operations.CancelOperation |
||||
post: '/v1/{name=projects/*/locations/*/operations/*}:cancel' |
||||
body: '*' |
||||
- selector: google.longrunning.Operations.DeleteOperation |
||||
delete: '/v1/{name=projects/*/locations/*/operations/*}' |
||||
- selector: google.longrunning.Operations.GetOperation |
||||
get: '/v1/{name=projects/*/locations/*/operations/*}' |
||||
- selector: google.longrunning.Operations.ListOperations |
||||
get: '/v1/{name=projects/*/locations/*}/operations' |
||||
|
||||
authentication: |
||||
rules: |
||||
- selector: 'google.cloud.datafusion.v1.DataFusion.*' |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
||||
- selector: google.cloud.location.Locations.GetLocation |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
||||
- selector: google.cloud.location.Locations.ListLocations |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
||||
- selector: 'google.iam.v1.IAMPolicy.*' |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
||||
- selector: 'google.longrunning.Operations.*' |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
@ -0,0 +1,344 @@ |
||||
# This file was automatically generated by BuildFileGenerator |
||||
# https://github.com/googleapis/rules_gapic/tree/master/bazel |
||||
|
||||
# Most of the manual changes to this file will be overwritten. |
||||
# It's **only** allowed to change the following rule attribute values: |
||||
# - names of *_gapic_assembly_* rules |
||||
# - certain parameters of *_gapic_library rules, including but not limited to: |
||||
# * extra_protoc_parameters |
||||
# * extra_protoc_file_parameters |
||||
# The complete list of preserved parameters can be found in the source code. |
||||
|
||||
# This is an API workspace, having public visibility by default makes perfect sense. |
||||
package(default_visibility = ["//visibility:public"]) |
||||
|
||||
############################################################################## |
||||
# Common |
||||
############################################################################## |
||||
load("@rules_proto//proto:defs.bzl", "proto_library") |
||||
load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") |
||||
|
||||
proto_library( |
||||
name = "datafusion_proto", |
||||
srcs = [ |
||||
"v1beta1.proto", |
||||
], |
||||
deps = [ |
||||
"//google/api:annotations_proto", |
||||
"//google/api:client_proto", |
||||
"//google/api:field_behavior_proto", |
||||
"//google/api:resource_proto", |
||||
"//google/iam/v1:policy_proto", |
||||
"//google/longrunning:operations_proto", |
||||
"//google/rpc:status_proto", |
||||
"@com_google_protobuf//:field_mask_proto", |
||||
"@com_google_protobuf//:timestamp_proto", |
||||
], |
||||
) |
||||
|
||||
proto_library_with_info( |
||||
name = "datafusion_proto_with_info", |
||||
deps = [ |
||||
":datafusion_proto", |
||||
"//google/cloud:common_resources_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Java |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"java_gapic_assembly_gradle_pkg", |
||||
"java_gapic_library", |
||||
"java_gapic_test", |
||||
"java_grpc_library", |
||||
"java_proto_library", |
||||
) |
||||
|
||||
java_proto_library( |
||||
name = "datafusion_java_proto", |
||||
deps = [":datafusion_proto"], |
||||
) |
||||
|
||||
java_grpc_library( |
||||
name = "datafusion_java_grpc", |
||||
srcs = [":datafusion_proto"], |
||||
deps = [":datafusion_java_proto"], |
||||
) |
||||
|
||||
java_gapic_library( |
||||
name = "datafusion_java_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
test_deps = [ |
||||
":datafusion_java_grpc", |
||||
"//google/iam/v1:iam_java_grpc", |
||||
], |
||||
deps = [ |
||||
":datafusion_java_proto", |
||||
"//google/iam/v1:iam_java_proto", |
||||
], |
||||
) |
||||
|
||||
java_gapic_test( |
||||
name = "datafusion_java_gapic_test_suite", |
||||
test_classes = [ |
||||
"com.google.cloud.datafusion.v1beta1.DataFusionClientTest", |
||||
], |
||||
runtime_deps = [":datafusion_java_gapic_test"], |
||||
) |
||||
|
||||
# Open Source Packages |
||||
java_gapic_assembly_gradle_pkg( |
||||
name = "google-cloud-datafusion-v1beta1-java", |
||||
deps = [ |
||||
":datafusion_java_gapic", |
||||
":datafusion_java_grpc", |
||||
":datafusion_java_proto", |
||||
":datafusion_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Go |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"go_gapic_assembly_pkg", |
||||
"go_gapic_library", |
||||
"go_proto_library", |
||||
"go_test", |
||||
) |
||||
|
||||
go_proto_library( |
||||
name = "datafusion_go_proto", |
||||
compilers = ["@io_bazel_rules_go//proto:go_grpc"], |
||||
importpath = "google.golang.org/genproto/googleapis/cloud/datafusion/v1beta1", |
||||
protos = [":datafusion_proto"], |
||||
deps = [ |
||||
"//google/api:annotations_go_proto", |
||||
"//google/iam/v1:iam_go_proto", |
||||
"//google/longrunning:longrunning_go_proto", |
||||
"//google/rpc:status_go_proto", |
||||
], |
||||
) |
||||
|
||||
go_gapic_library( |
||||
name = "datafusion_go_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
importpath = "cloud.google.com/go/datafusion/apiv1beta1;datafusion", |
||||
metadata = True, |
||||
service_yaml = "datafusion_v1beta1.yaml", |
||||
deps = [ |
||||
":datafusion_go_proto", |
||||
"//google/iam/v1:iam_go_proto", |
||||
"//google/longrunning:longrunning_go_proto", |
||||
"@com_google_cloud_go//longrunning:go_default_library", |
||||
"@com_google_cloud_go//longrunning/autogen:go_default_library", |
||||
], |
||||
) |
||||
|
||||
go_test( |
||||
name = "datafusion_go_gapic_test", |
||||
srcs = [":datafusion_go_gapic_srcjar_test"], |
||||
embed = [":datafusion_go_gapic"], |
||||
importpath = "cloud.google.com/go/datafusion/apiv1beta1", |
||||
) |
||||
|
||||
# Open Source Packages |
||||
go_gapic_assembly_pkg( |
||||
name = "gapi-cloud-datafusion-v1beta1-go", |
||||
deps = [ |
||||
":datafusion_go_gapic", |
||||
":datafusion_go_gapic_srcjar-metadata.srcjar", |
||||
":datafusion_go_gapic_srcjar-test.srcjar", |
||||
":datafusion_go_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Python |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"py_gapic_assembly_pkg", |
||||
"py_gapic_library", |
||||
) |
||||
|
||||
py_gapic_library( |
||||
name = "datafusion_py_gapic", |
||||
srcs = [":datafusion_proto"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
) |
||||
|
||||
# Open Source Packages |
||||
py_gapic_assembly_pkg( |
||||
name = "datafusion-v1beta1-py", |
||||
deps = [ |
||||
":datafusion_py_gapic", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# PHP |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"php_gapic_assembly_pkg", |
||||
"php_gapic_library", |
||||
"php_grpc_library", |
||||
"php_proto_library", |
||||
) |
||||
|
||||
php_proto_library( |
||||
name = "datafusion_php_proto", |
||||
deps = [":datafusion_proto"], |
||||
) |
||||
|
||||
php_grpc_library( |
||||
name = "datafusion_php_grpc", |
||||
srcs = [":datafusion_proto"], |
||||
deps = [":datafusion_php_proto"], |
||||
) |
||||
|
||||
php_gapic_library( |
||||
name = "datafusion_php_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
service_yaml = "datafusion_v1beta1.yaml", |
||||
deps = [ |
||||
":datafusion_php_grpc", |
||||
":datafusion_php_proto", |
||||
], |
||||
) |
||||
|
||||
# Open Source Packages |
||||
php_gapic_assembly_pkg( |
||||
name = "google-cloud-datafusion-v1beta1-php", |
||||
deps = [ |
||||
":datafusion_php_gapic", |
||||
":datafusion_php_grpc", |
||||
":datafusion_php_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Node.js |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"nodejs_gapic_assembly_pkg", |
||||
"nodejs_gapic_library", |
||||
) |
||||
|
||||
nodejs_gapic_library( |
||||
name = "datafusion_nodejs_gapic", |
||||
package_name = "@google-cloud/datafusion", |
||||
src = ":datafusion_proto_with_info", |
||||
extra_protoc_parameters = ["metadata"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
package = "google.cloud.datafusion.v1beta1", |
||||
service_yaml = "datafusion_v1beta1.yaml", |
||||
deps = [], |
||||
) |
||||
|
||||
nodejs_gapic_assembly_pkg( |
||||
name = "datafusion-v1beta1-nodejs", |
||||
deps = [ |
||||
":datafusion_nodejs_gapic", |
||||
":datafusion_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# Ruby |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"ruby_cloud_gapic_library", |
||||
"ruby_gapic_assembly_pkg", |
||||
"ruby_grpc_library", |
||||
"ruby_proto_library", |
||||
) |
||||
|
||||
ruby_proto_library( |
||||
name = "datafusion_ruby_proto", |
||||
deps = [":datafusion_proto"], |
||||
) |
||||
|
||||
ruby_grpc_library( |
||||
name = "datafusion_ruby_grpc", |
||||
srcs = [":datafusion_proto"], |
||||
deps = [":datafusion_ruby_proto"], |
||||
) |
||||
|
||||
ruby_cloud_gapic_library( |
||||
name = "datafusion_ruby_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-datafusion-v1beta1"], |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
deps = [ |
||||
":datafusion_ruby_grpc", |
||||
":datafusion_ruby_proto", |
||||
], |
||||
) |
||||
|
||||
# Open Source Packages |
||||
ruby_gapic_assembly_pkg( |
||||
name = "google-cloud-datafusion-v1beta1-ruby", |
||||
deps = [ |
||||
":datafusion_ruby_gapic", |
||||
":datafusion_ruby_grpc", |
||||
":datafusion_ruby_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# C# |
||||
############################################################################## |
||||
load( |
||||
"@com_google_googleapis_imports//:imports.bzl", |
||||
"csharp_gapic_assembly_pkg", |
||||
"csharp_gapic_library", |
||||
"csharp_grpc_library", |
||||
"csharp_proto_library", |
||||
) |
||||
|
||||
csharp_proto_library( |
||||
name = "datafusion_csharp_proto", |
||||
deps = [":datafusion_proto"], |
||||
) |
||||
|
||||
csharp_grpc_library( |
||||
name = "datafusion_csharp_grpc", |
||||
srcs = [":datafusion_proto"], |
||||
deps = [":datafusion_csharp_proto"], |
||||
) |
||||
|
||||
csharp_gapic_library( |
||||
name = "datafusion_csharp_gapic", |
||||
srcs = [":datafusion_proto_with_info"], |
||||
common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", |
||||
grpc_service_config = "datafusion_grpc_service_config.json", |
||||
deps = [ |
||||
":datafusion_csharp_grpc", |
||||
":datafusion_csharp_proto", |
||||
], |
||||
) |
||||
|
||||
# Open Source Packages |
||||
csharp_gapic_assembly_pkg( |
||||
name = "google-cloud-datafusion-v1beta1-csharp", |
||||
deps = [ |
||||
":datafusion_csharp_gapic", |
||||
":datafusion_csharp_grpc", |
||||
":datafusion_csharp_proto", |
||||
], |
||||
) |
||||
|
||||
############################################################################## |
||||
# C++ |
||||
############################################################################## |
||||
# Put your C++ rules here |
@ -0,0 +1,12 @@ |
||||
{ |
||||
"methodConfig": [ |
||||
{ |
||||
"name": [ |
||||
{ |
||||
"service": "google.cloud.datafusion.v1beta1.DataFusion" |
||||
} |
||||
], |
||||
"timeout": "60s" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,119 @@ |
||||
type: google.api.Service |
||||
config_version: 3 |
||||
name: datafusion.googleapis.com |
||||
title: Cloud Data Fusion API |
||||
|
||||
apis: |
||||
- name: google.cloud.datafusion.v1beta1.DataFusion |
||||
|
||||
types: |
||||
- name: google.cloud.datafusion.v1beta1.OperationMetadata |
||||
|
||||
documentation: |
||||
summary: |- |
||||
Cloud Data Fusion is a fully-managed, cloud native, enterprise data |
||||
integration service for quickly building and managing data pipelines. |
||||
It provides a graphical interface to increase time efficiency and |
||||
reduce complexity, and allows business users, developers, and data |
||||
scientists to easily and reliably build scalable data integration |
||||
solutions to cleanse, prepare, blend, transfer and transform data |
||||
without having to wrestle with infrastructure. |
||||
rules: |
||||
- selector: google.cloud.location.Locations.GetLocation |
||||
description: Gets information about a location. |
||||
|
||||
- selector: google.cloud.location.Locations.ListLocations |
||||
description: Lists information about the supported locations for this service. |
||||
|
||||
- selector: google.iam.v1.IAMPolicy.GetIamPolicy |
||||
description: |- |
||||
Gets the access control policy for a resource. Returns an empty policy |
||||
if the resource exists and does not have a policy set. |
||||
|
||||
- selector: google.iam.v1.IAMPolicy.SetIamPolicy |
||||
description: |- |
||||
Sets the access control policy on the specified resource. Replaces |
||||
any existing policy. |
||||
|
||||
Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` |
||||
errors. |
||||
|
||||
- selector: google.iam.v1.IAMPolicy.TestIamPermissions |
||||
description: |- |
||||
Returns permissions that a caller has on the specified resource. If the |
||||
resource does not exist, this will return an empty set of |
||||
permissions, not a `NOT_FOUND` error. |
||||
|
||||
Note: This operation is designed to be used for building |
||||
permission-aware UIs and command-line tools, not for authorization |
||||
checking. This operation may "fail open" without warning. |
||||
|
||||
backend: |
||||
rules: |
||||
- selector: 'google.cloud.datafusion.v1beta1.DataFusion.*' |
||||
deadline: 60.0 |
||||
- selector: google.cloud.location.Locations.GetLocation |
||||
deadline: 60.0 |
||||
- selector: google.cloud.location.Locations.ListLocations |
||||
deadline: 60.0 |
||||
- selector: 'google.iam.v1.IAMPolicy.*' |
||||
deadline: 60.0 |
||||
- selector: 'google.longrunning.Operations.*' |
||||
deadline: 60.0 |
||||
- selector: google.longrunning.Operations.GetOperation |
||||
deadline: 5.0 |
||||
|
||||
http: |
||||
rules: |
||||
- selector: google.cloud.location.Locations.GetLocation |
||||
get: '/v1beta1/{name=projects/*/locations/*}' |
||||
- selector: google.cloud.location.Locations.ListLocations |
||||
get: '/v1beta1/{name=projects/*}/locations' |
||||
- selector: google.iam.v1.IAMPolicy.GetIamPolicy |
||||
get: '/v1beta1/{resource=projects/*/locations/*/instances/*}:getIamPolicy' |
||||
additional_bindings: |
||||
- get: '/v1beta1/{resource=projects/*/locations/*/instances/*/namespaces/*}:getIamPolicy' |
||||
- selector: google.iam.v1.IAMPolicy.SetIamPolicy |
||||
post: '/v1beta1/{resource=projects/*/locations/*/instances/*}:setIamPolicy' |
||||
body: '*' |
||||
additional_bindings: |
||||
- post: '/v1beta1/{resource=projects/*/locations/*/instances/*/namespaces/*}:setIamPolicy' |
||||
body: '*' |
||||
- selector: google.iam.v1.IAMPolicy.TestIamPermissions |
||||
post: '/v1beta1/{resource=projects/*/locations/*/instances/*}:testIamPermissions' |
||||
body: '*' |
||||
additional_bindings: |
||||
- post: '/v1beta1/{resource=projects/*/locations/*/instances/*/namespaces/*}:testIamPermissions' |
||||
body: '*' |
||||
- selector: google.longrunning.Operations.CancelOperation |
||||
post: '/v1beta1/{name=projects/*/locations/*/operations/*}:cancel' |
||||
body: '*' |
||||
- selector: google.longrunning.Operations.DeleteOperation |
||||
delete: '/v1beta1/{name=projects/*/locations/*/operations/*}' |
||||
- selector: google.longrunning.Operations.GetOperation |
||||
get: '/v1beta1/{name=projects/*/locations/*/operations/*}' |
||||
- selector: google.longrunning.Operations.ListOperations |
||||
get: '/v1beta1/{name=projects/*/locations/*}/operations' |
||||
|
||||
authentication: |
||||
rules: |
||||
- selector: 'google.cloud.datafusion.v1beta1.DataFusion.*' |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
||||
- selector: google.cloud.location.Locations.GetLocation |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
||||
- selector: google.cloud.location.Locations.ListLocations |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
||||
- selector: 'google.iam.v1.IAMPolicy.*' |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
||||
- selector: 'google.longrunning.Operations.*' |
||||
oauth: |
||||
canonical_scopes: |- |
||||
https://www.googleapis.com/auth/cloud-platform |
@ -0,0 +1,712 @@ |
||||
// Copyright 2021 Google LLC |
||||
// |
||||
// Licensed under the Apache License, Version 2.0 (the "License"); |
||||
// you may not use this file except in compliance with the License. |
||||
// You may obtain a copy of the License at |
||||
// |
||||
// http://www.apache.org/licenses/LICENSE-2.0 |
||||
// |
||||
// Unless required by applicable law or agreed to in writing, software |
||||
// distributed under the License is distributed on an "AS IS" BASIS, |
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
// See the License for the specific language governing permissions and |
||||
// limitations under the License. |
||||
|
||||
syntax = "proto3"; |
||||
|
||||
package google.cloud.datafusion.v1beta1; |
||||
|
||||
import "google/api/annotations.proto"; |
||||
import "google/api/client.proto"; |
||||
import "google/api/field_behavior.proto"; |
||||
import "google/api/resource.proto"; |
||||
import "google/iam/v1/policy.proto"; |
||||
import "google/longrunning/operations.proto"; |
||||
import "google/protobuf/field_mask.proto"; |
||||
import "google/protobuf/timestamp.proto"; |
||||
import "google/rpc/status.proto"; |
||||
|
||||
option csharp_namespace = "Google.Cloud.DataFusion.V1Beta1"; |
||||
option go_package = "google.golang.org/genproto/googleapis/cloud/datafusion/v1beta1;datafusion"; |
||||
option java_multiple_files = true; |
||||
option java_package = "com.google.cloud.datafusion.v1beta1"; |
||||
option php_namespace = "Google\\Cloud\\DataFusion\\V1beta1"; |
||||
option ruby_package = "Google::Cloud::DataFusion::V1beta1"; |
||||
|
||||
// Service for creating and managing Data Fusion instances. |
||||
// Data Fusion enables ETL developers to build code-free, data integration |
||||
// pipelines via a point-and-click UI. |
||||
service DataFusion { |
||||
option (google.api.default_host) = "datafusion.googleapis.com"; |
||||
option (google.api.oauth_scopes) = |
||||
"https://www.googleapis.com/auth/cloud-platform"; |
||||
|
||||
// Lists possible versions for Data Fusion instances in the specified project |
||||
// and location. |
||||
rpc ListAvailableVersions(ListAvailableVersionsRequest) |
||||
returns (ListAvailableVersionsResponse) { |
||||
option (google.api.http) = { |
||||
get: "/v1beta1/{parent=projects/*/locations/*}/versions" |
||||
}; |
||||
option (google.api.method_signature) = "parent"; |
||||
} |
||||
|
||||
// Lists Data Fusion instances in the specified project and location. |
||||
rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) { |
||||
option (google.api.http) = { |
||||
get: "/v1beta1/{parent=projects/*/locations/*}/instances" |
||||
}; |
||||
} |
||||
|
||||
// Gets details of a single Data Fusion instance. |
||||
rpc GetInstance(GetInstanceRequest) returns (Instance) { |
||||
option (google.api.http) = { |
||||
get: "/v1beta1/{name=projects/*/locations/*/instances/*}" |
||||
}; |
||||
} |
||||
|
||||
// Creates a new Data Fusion instance in the specified project and location. |
||||
rpc CreateInstance(CreateInstanceRequest) |
||||
returns (google.longrunning.Operation) { |
||||
option (google.api.http) = { |
||||
post: "/v1beta1/{parent=projects/*/locations/*}/instances" |
||||
body: "instance" |
||||
}; |
||||
option (google.api.method_signature) = "parent,instance,instance_id"; |
||||
option (google.longrunning.operation_info) = { |
||||
response_type: "Instance" |
||||
metadata_type: "OperationMetadata" |
||||
}; |
||||
} |
||||
|
||||
// Deletes a single Data Fusion instance. |
||||
rpc DeleteInstance(DeleteInstanceRequest) |
||||
returns (google.longrunning.Operation) { |
||||
option (google.api.http) = { |
||||
delete: "/v1beta1/{name=projects/*/locations/*/instances/*}" |
||||
}; |
||||
option (google.api.method_signature) = "name"; |
||||
option (google.longrunning.operation_info) = { |
||||
response_type: "google.protobuf.Empty" |
||||
metadata_type: "OperationMetadata" |
||||
}; |
||||
} |
||||
|
||||
// Updates a single Data Fusion instance. |
||||
rpc UpdateInstance(UpdateInstanceRequest) |
||||
returns (google.longrunning.Operation) { |
||||
option (google.api.http) = { |
||||
patch: "/v1beta1/{instance.name=projects/*/locations/*/instances/*}" |
||||
body: "instance" |
||||
}; |
||||
option (google.api.method_signature) = "instance,update_mask"; |
||||
option (google.longrunning.operation_info) = { |
||||
response_type: "Instance" |
||||
metadata_type: "OperationMetadata" |
||||
}; |
||||
} |
||||
|
||||
// Restart a single Data Fusion instance. |
||||
// At the end of an operation instance is fully restarted. |
||||
rpc RestartInstance(RestartInstanceRequest) |
||||
returns (google.longrunning.Operation) { |
||||
option (google.api.http) = { |
||||
post: "/v1beta1/{name=projects/*/locations/*/instances/*}:restart" |
||||
body: "*" |
||||
}; |
||||
option (google.longrunning.operation_info) = { |
||||
response_type: "Instance" |
||||
metadata_type: "OperationMetadata" |
||||
}; |
||||
} |
||||
|
||||
// Upgrade a single Data Fusion instance. |
||||
// At the end of an operation instance is fully upgraded. |
||||
rpc UpgradeInstance(UpgradeInstanceRequest) |
||||
returns (google.longrunning.Operation) { |
||||
option (google.api.http) = { |
||||
post: "/v1beta1/{name=projects/*/locations/*/instances/*}:upgrade" |
||||
body: "*" |
||||
}; |
||||
option (google.longrunning.operation_info) = { |
||||
response_type: "Instance" |
||||
metadata_type: "OperationMetadata" |
||||
}; |
||||
} |
||||
|
||||
// Remove IAM policy that is currently set on the given resource. |
||||
rpc RemoveIamPolicy(RemoveIamPolicyRequest) |
||||
returns (RemoveIamPolicyResponse) { |
||||
option (google.api.http) = { |
||||
post: "/v1beta1/{resource=projects/*/locations/*/**}:removeIamPolicy" |
||||
body: "*" |
||||
}; |
||||
} |
||||
|
||||
// List namespaces in a given instance |
||||
rpc ListNamespaces(ListNamespacesRequest) returns (ListNamespacesResponse) { |
||||
option (google.api.http) = { |
||||
get: "/v1beta1/{parent=projects/*/locations/*/instances/*}/namespaces" |
||||
}; |
||||
option (google.api.method_signature) = "parent"; |
||||
} |
||||
|
||||
// Add DNS peering on the given resource. |
||||
rpc AddDnsPeering(AddDnsPeeringRequest) returns (AddDnsPeeringResponse) { |
||||
option (google.api.http) = { |
||||
post: "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:add" |
||||
body: "*" |
||||
}; |
||||
option (google.api.method_signature) = "parent"; |
||||
} |
||||
|
||||
// Remove DNS peering on the given resource. |
||||
rpc RemoveDnsPeering(RemoveDnsPeeringRequest) |
||||
returns (RemoveDnsPeeringResponse) { |
||||
option (google.api.http) = { |
||||
post: "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:remove" |
||||
body: "*" |
||||
}; |
||||
option (google.api.method_signature) = "parent"; |
||||
} |
||||
|
||||
// List DNS peering for a given resource. |
||||
rpc ListDnsPeerings(ListDnsPeeringsRequest) |
||||
returns (ListDnsPeeringsResponse) { |
||||
option (google.api.http) = { |
||||
get: "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:list" |
||||
}; |
||||
option (google.api.method_signature) = "parent"; |
||||
} |
||||
} |
||||
|
||||
// Network configuration for a Data Fusion instance. These configurations |
||||
// are used for peering with the customer network. Configurations are optional |
||||
// when a public Data Fusion instance is to be created. However, providing |
||||
// these configurations allows several benefits, such as reduced network latency |
||||
// while accessing the customer resources from managed Data Fusion instance |
||||
// nodes, as well as access to the customer on-prem resources. |
||||
message NetworkConfig { |
||||
// Name of the network in the customer project with which the Tenant Project |
||||
// will be peered for executing pipelines. In case of shared VPC where the |
||||
// network resides in another host project the network should specified in |
||||
// the form of projects/{host-project-id}/global/networks/{network} |
||||
string network = 1; |
||||
|
||||
// The IP range in CIDR notation to use for the managed Data Fusion instance |
||||
// nodes. This range must not overlap with any other ranges used in the Data |
||||
// Fusion instance network. |
||||
string ip_allocation = 2; |
||||
} |
||||
|
||||
// The Data Fusion version. |
||||
message Version { |
||||
// The version number of the Data Fusion instance, such as '6.0.1.0'. |
||||
string version_number = 1; |
||||
|
||||
// Whether this is currently the default version for Cloud Data Fusion |
||||
bool default_version = 2; |
||||
|
||||
// Represents a list of available feature names for a given version. |
||||
repeated string available_features = 3; |
||||
} |
||||
|
||||
// Identifies Data Fusion accelerators for an instance. |
||||
message Accelerator { |
||||
// Each type represents an Accelerator (Add-On) supported by Cloud Data Fusion |
||||
// service. |
||||
enum AcceleratorType { |
||||
// Default value, if unspecified. |
||||
ACCELERATOR_TYPE_UNSPECIFIED = 0; |
||||
|
||||
// Change Data Capture accelerator for CDF. |
||||
CDC = 1; |
||||
|
||||
// Cloud Healthcare accelerator for CDF. This accelerator is to enable Cloud |
||||
// Healthcare specific CDF plugins developed by Healthcare team. |
||||
HEALTHCARE = 2; |
||||
} |
||||
|
||||
// The type of an accelator for a CDF instance. |
||||
AcceleratorType accelerator_type = 1; |
||||
} |
||||
|
||||
// The crypto key configuration. This field is used by the Customer-managed |
||||
// encryption keys (CMEK) feature. |
||||
message CryptoKeyConfig { |
||||
// The name of the key which is used to encrypt/decrypt customer data. For key |
||||
// in Cloud KMS, the key should be in the format of |
||||
// `projects/*/locations/*/keyRings/*/cryptoKeys/*`. |
||||
string key_reference = 1; |
||||
} |
||||
|
||||
// Represents a Data Fusion instance. |
||||
message Instance { |
||||
option (google.api.resource) = { |
||||
type: "datafusion.googleapis.com/Instance" |
||||
pattern: "projects/{project}/locations/{location}/instances/{instance}" |
||||
}; |
||||
|
||||
// Represents the type of Data Fusion instance. Each type is configured with |
||||
// the default settings for processing and memory. |
||||
enum Type { |
||||
// No type specified. The instance creation will fail. |
||||
TYPE_UNSPECIFIED = 0; |
||||
|
||||
// Basic Data Fusion instance. In Basic type, the user will be able to |
||||
// create data pipelines using point and click UI. However, there are |
||||
// certain limitations, such as fewer number of concurrent pipelines, no |
||||
// support for streaming pipelines, etc. |
||||
BASIC = 1; |
||||
|
||||
// Enterprise Data Fusion instance. In Enterprise type, the user will have |
||||
// all features available, such as support for streaming pipelines, |
||||
// unlimited number of concurrent pipelines, etc. |
||||
ENTERPRISE = 2; |
||||
|
||||
// Developer Data Fusion instance. In Developer type, the user will have all |
||||
// features available but with restrictive capabilities. This is to help |
||||
// enterprises design and develop their data ingestion and integration |
||||
// pipelines at low cost. |
||||
DEVELOPER = 3; |
||||
} |
||||
|
||||
// Represents the state of a Data Fusion instance |
||||
enum State { |
||||
// Instance does not have a state yet |
||||
STATE_UNSPECIFIED = 0; |
||||
|
||||
// Instance is being created |
||||
CREATING = 1; |
||||
|
||||
// Instance is running and ready for requests |
||||
RUNNING = 2; |
||||
|
||||
// Instance creation failed |
||||
FAILED = 3; |
||||
|
||||
// Instance is being deleted |
||||
DELETING = 4; |
||||
|
||||
// Instance is being upgraded |
||||
UPGRADING = 5; |
||||
|
||||
// Instance is being restarted |
||||
RESTARTING = 6; |
||||
|
||||
// Instance is being updated on customer request |
||||
UPDATING = 7; |
||||
|
||||
// Instance is being auto-updated |
||||
AUTO_UPDATING = 8; |
||||
|
||||
// Instance is being auto-upgraded |
||||
AUTO_UPGRADING = 9; |
||||
} |
||||
|
||||
// Output only. The name of this instance is in the form of |
||||
// projects/{project}/locations/{location}/instances/{instance}. |
||||
string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// A description of this instance. |
||||
string description = 2; |
||||
|
||||
// Required. Instance type. |
||||
Type type = 3 [(google.api.field_behavior) = REQUIRED]; |
||||
|
||||
// Option to enable Stackdriver Logging. |
||||
bool enable_stackdriver_logging = 4; |
||||
|
||||
// Option to enable Stackdriver Monitoring. |
||||
bool enable_stackdriver_monitoring = 5; |
||||
|
||||
// Specifies whether the Data Fusion instance should be private. If set to |
||||
// true, all Data Fusion nodes will have private IP addresses and will not be |
||||
// able to access the public internet. |
||||
bool private_instance = 6; |
||||
|
||||
// Network configuration options. These are required when a private Data |
||||
// Fusion instance is to be created. |
||||
NetworkConfig network_config = 7; |
||||
|
||||
// The resource labels for instance to use to annotate any related underlying |
||||
// resources such as Compute Engine VMs. The character '=' is not allowed to |
||||
// be used within the labels. |
||||
map<string, string> labels = 8; |
||||
|
||||
// Map of additional options used to configure the behavior of |
||||
// Data Fusion instance. |
||||
map<string, string> options = 9; |
||||
|
||||
// Output only. The time the instance was created. |
||||
google.protobuf.Timestamp create_time = 10 |
||||
[(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. The time the instance was last updated. |
||||
google.protobuf.Timestamp update_time = 11 |
||||
[(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. The current state of this Data Fusion instance. |
||||
State state = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. Additional information about the current state of this Data |
||||
// Fusion instance if available. |
||||
string state_message = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. Endpoint on which the Data Fusion UI is accessible. |
||||
string service_endpoint = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Name of the zone in which the Data Fusion instance will be created. Only |
||||
// DEVELOPER instances use this field. |
||||
string zone = 15; |
||||
|
||||
// Current version of Data Fusion. |
||||
string version = 16; |
||||
|
||||
// Output only. Deprecated. Use tenant_project_id instead to extract the |
||||
// tenant project ID. |
||||
string service_account = 17 |
||||
[deprecated = true, (google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Display name for an instance. |
||||
string display_name = 18; |
||||
|
||||
// Available versions that the instance can be upgraded to using |
||||
// UpdateInstanceRequest. |
||||
repeated Version available_version = 19; |
||||
|
||||
// Output only. Endpoint on which the REST APIs is accessible. |
||||
string api_endpoint = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. Cloud Storage bucket generated by Data Fusion in the customer |
||||
// project. |
||||
string gcs_bucket = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// List of accelerators enabled for this CDF instance. |
||||
repeated Accelerator accelerators = 22; |
||||
|
||||
// Output only. P4 service account for the customer project. |
||||
string p4_service_account = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// Output only. The name of the tenant project. |
||||
string tenant_project_id = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; |
||||
|
||||
// User-managed service account to set on Dataproc when Cloud Data Fusion |
||||
// creates Dataproc to run data processing pipelines. |
||||
// |
||||
// This allows users to have fine-grained access control on Dataproc's |
||||
// accesses to cloud resources. |
||||
string dataproc_service_account = 25; |
||||
|
||||
// Option to enable granular role-based access control. |
||||
bool enable_rbac = 26; |
||||
|
||||
// The crypto key configuration. This field is used by the Customer-Managed |
||||
// Encryption Keys (CMEK) feature. |
||||
CryptoKeyConfig crypto_key_config = 27; |
||||
} |
||||
|
||||
// Request message for listing Data Fusion instances. |
||||
message ListInstancesRequest { |
||||
// The project and location for which to retrieve instance information |
||||
// in the format projects/{project}/locations/{location}. If the location is |
||||
// specified as '-' (wildcard), then all regions available to the project |
||||
// are queried, and the results are aggregated. |
||||
string parent = 1; |
||||
|
||||
// The maximum number of items to return. |
||||
int32 page_size = 2; |
||||
|
||||
// The next_page_token value to use if there are additional |
||||
// results to retrieve for this list request. |
||||
string page_token = 3; |
||||
|
||||
// List filter. |
||||
string filter = 4; |
||||
|
||||
// Sort results. Supported values are "name", "name desc", or "" (unsorted). |
||||
string order_by = 5; |
||||
} |
||||
|
||||
// Response message for the list instance request. |
||||
message ListInstancesResponse { |
||||
// Represents a list of Data Fusion instances. |
||||
repeated Instance instances = 1; |
||||
|
||||
// Token to retrieve the next page of results or empty if there are no more |
||||
// results in the list. |
||||
string next_page_token = 2; |
||||
|
||||
// Locations that could not be reached. |
||||
repeated string unreachable = 3; |
||||
} |
||||
|
||||
// Request message for the list available versions request. |
||||
message ListAvailableVersionsRequest { |
||||
// Required. The project and location for which to retrieve instance |
||||
// information in the format projects/{project}/locations/{location}. |
||||
string parent = 1 [(google.api.field_behavior) = REQUIRED]; |
||||
|
||||
// The maximum number of items to return. |
||||
int32 page_size = 2; |
||||
|
||||
// The next_page_token value to use if there are additional |
||||
// results to retrieve for this list request. |
||||
string page_token = 3; |
||||
|
||||
// Whether or not to return the latest patch of every available minor version. |
||||
// If true, only the latest patch will be returned. Ex. if allowed versions is |
||||
// [6.1.1, 6.1.2, 6.2.0] then response will be [6.1.2, 6.2.0] |
||||
bool latest_patch_only = 4; |
||||
} |
||||
|
||||
// Response message for the list available versions request. |
||||
message ListAvailableVersionsResponse { |
||||
// Represents a list of versions that are supported. |
||||
repeated Version available_versions = 1; |
||||
|
||||
// Token to retrieve the next page of results or empty if there are no more |
||||
// results in the list. |
||||
string next_page_token = 2; |
||||
} |
||||
|
||||
// Request message for getting details about a Data Fusion instance. |
||||
message GetInstanceRequest { |
||||
// The instance resource name in the format |
||||
// projects/{project}/locations/{location}/instances/{instance}. |
||||
string name = 1; |
||||
} |
||||
|
||||
// Request message for creating a Data Fusion instance. |
||||
message CreateInstanceRequest { |
||||
// The instance's project and location in the format |
||||
// projects/{project}/locations/{location}. |
||||
string parent = 1; |
||||
|
||||
// The name of the instance to create. |
||||
string instance_id = 2; |
||||
|
||||
// An instance resource. |
||||
Instance instance = 3; |
||||
} |
||||
|
||||
// Request message for deleting a Data Fusion instance. |
||||
message DeleteInstanceRequest { |
||||
// The instance resource name in the format |
||||
// projects/{project}/locations/{location}/instances/{instance} |
||||
string name = 1; |
||||
} |
||||
|
||||
// Request message for updating a Data Fusion instance. |
||||
// Data Fusion only allows updating the labels, options, and stack driver |
||||
// settings. |
||||
message UpdateInstanceRequest { |
||||
// The instance resource that replaces the resource on the server. Currently, |
||||
// Data Fusion only allows replacing labels, options, and stack driver |
||||
// settings. All other fields will be ignored. |
||||
Instance instance = 1; |
||||
|
||||
// Field mask is used to specify the fields that the update will overwrite |
||||
// in an instance resource. The fields specified in the update_mask are |
||||
// relative to the resource, not the full request. |
||||
// A field will be overwritten if it is in the mask. |
||||
// If the user does not provide a mask, all the supported fields (labels and |
||||
// options currently) will be overwritten. |
||||
google.protobuf.FieldMask update_mask = 2; |
||||
} |
||||
|
||||
// Request message for restarting a Data Fusion instance. |
||||
message RestartInstanceRequest { |
||||
// Name of the Data Fusion instance which need to be restarted in the form of |
||||
// projects/{project}/locations/{location}/instances/{instance} |
||||
string name = 1; |
||||
} |
||||
|
||||
// Request message for upgrading a Data Fusion instance. |
||||
// To change the instance properties, instance update should be used. |
||||
message UpgradeInstanceRequest { |
||||
// Name of the Data Fusion instance which need to be upgraded in the form of |
||||
// projects/{project}/locations/{location}/instances/{instance} |
||||
// Instance will be upgraded with the latest stable version of the Data |
||||
// Fusion. |
||||
string name = 1; |
||||
} |
||||
|
||||
// Represents the metadata of a long-running operation. |
||||
message OperationMetadata { |
||||
// The time the operation was created. |
||||
google.protobuf.Timestamp create_time = 1; |
||||
|
||||
// The time the operation finished running. |
||||
google.protobuf.Timestamp end_time = 2; |
||||
|
||||
// Server-defined resource path for the target of the operation. |
||||
string target = 3; |
||||
|
||||
// Name of the verb executed by the operation. |
||||
string verb = 4; |
||||
|
||||
// Human-readable status of the operation if any. |
||||
string status_detail = 5; |
||||
|
||||
// Identifies whether the user has requested cancellation |
||||
// of the operation. Operations that have successfully been cancelled |
||||
// have [Operation.error][] value with a |
||||
// [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to |
||||
// `Code.CANCELLED`. |
||||
bool requested_cancellation = 6; |
||||
|
||||
// API version used to start the operation. |
||||
string api_version = 7; |
||||
} |
||||
|
||||
// Request message for RemoveIamPolicy method. |
||||
message RemoveIamPolicyRequest { |
||||
// The resource on which IAM policy to be removed is attached to. |
||||
string resource = 1; |
||||
} |
||||
|
||||
// Response message for RemoveIamPolicy method. |
||||
message RemoveIamPolicyResponse {} |
||||
|
||||
// List namespaces request. |
||||
message ListNamespacesRequest { |
||||
// Required. The instance to list its namespaces. |
||||
string parent = 1 [ |
||||
(google.api.field_behavior) = REQUIRED, |
||||
(google.api.resource_reference) = { |
||||
type: "datafusion.googleapis.com/Instance" |
||||
} |
||||
]; |
||||
|
||||
// The maximum number of items to return. |
||||
int32 page_size = 2; |
||||
|
||||
// The next_page_token value to use if there are additional |
||||
// results to retrieve for this list request. |
||||
string page_token = 3; |
||||
|
||||
// By default, only basic information about a namespace is returned |
||||
// (e.g. name). When `NAMESPACE_VIEW_FULL` is specified, additional |
||||
// information associated with a namespace gets returned |
||||
// (e.g. IAM policy set on the namespace) |
||||
NamespaceView view = 4; |
||||
} |
||||
|
||||
// IAMPolicy encapsulates the IAM policy name, definition and status of |
||||
// policy fetching. |
||||
message IAMPolicy { |
||||
// Policy definition if IAM policy fetching is successful, |
||||
// otherwise empty. |
||||
google.iam.v1.Policy policy = 1; |
||||
|
||||
// Status of iam policy fetching. |
||||
google.rpc.Status status = 2; |
||||
} |
||||
|
||||
// Represents the information of a namespace |
||||
message Namespace { |
||||
option (google.api.resource) = { |
||||
type: "datafusion.googleapis.com/Namespace" |
||||
pattern: "projects/{project}/locations/{location}/instances/{instance}/namespaces/{namespace}" |
||||
}; |
||||
|
||||
// Name of the given namespace. |
||||
string name = 1; |
||||
|
||||
// IAM policy associated with this namespace. |
||||
IAMPolicy iam_policy = 2; |
||||
} |
||||
|
||||
// List namespaces response. |
||||
message ListNamespacesResponse { |
||||
// List of namespaces |
||||
repeated Namespace namespaces = 1; |
||||
|
||||
// Token to retrieve the next page of results or empty if there are no more |
||||
// results in the list. |
||||
string next_page_token = 2; |
||||
} |
||||
|
||||
// DNS peering configuration. These configurations are used to create |
||||
// DNS peering with the customer Cloud DNS. |
||||
message DnsPeering { |
||||
// Required. Name of the zone. |
||||
string zone = 1 [(google.api.field_behavior) = REQUIRED]; |
||||
|
||||
// Required. Name of the dns. |
||||
string domain = 2 [(google.api.field_behavior) = REQUIRED]; |
||||
|
||||
// Optional. Optional description of the dns zone. |
||||
string description = 3 [(google.api.field_behavior) = OPTIONAL]; |
||||
|
||||
// Optional. Optional target project to which dns peering should happen. |
||||
string target_project = 4 [(google.api.field_behavior) = OPTIONAL]; |
||||
|
||||
// Optional. Optional target network to which dns peering should happen. |
||||
string target_network = 5 [(google.api.field_behavior) = OPTIONAL]; |
||||
} |
||||
|
||||
// Request message to create dns peering. |
||||
message AddDnsPeeringRequest { |
||||
// The resource on which DNS peering will be created. |
||||
string parent = 1; |
||||
|
||||
// Dns peering config. |
||||
DnsPeering dns_peering = 2; |
||||
} |
||||
|
||||
// Response message for set dns peering method. |
||||
message AddDnsPeeringResponse {} |
||||
|
||||
// A view for Namespace |
||||
enum NamespaceView { |
||||
// Default/unset value, which will use BASIC view. |
||||
NAMESPACE_VIEW_UNSPECIFIED = 0; |
||||
|
||||
// Show the most basic metadata of a namespace |
||||
NAMESPACE_VIEW_BASIC = 1; |
||||
|
||||
// Returns all metadata of a namespace |
||||
NAMESPACE_VIEW_FULL = 2; |
||||
} |
||||
|
||||
// Request message to remove dns peering. |
||||
message RemoveDnsPeeringRequest { |
||||
// The resource on which DNS peering will be removed. |
||||
string parent = 1; |
||||
|
||||
// Required. The zone to be removed. |
||||
string zone = 2 [(google.api.field_behavior) = REQUIRED]; |
||||
} |
||||
|
||||
// Response message for set dns peering method. |
||||
message RemoveDnsPeeringResponse {} |
||||
|
||||
// List dns peering request. |
||||
message ListDnsPeeringsRequest { |
||||
// Required. The resource on which dns peering will be listed. |
||||
string parent = 1 [ |
||||
(google.api.field_behavior) = REQUIRED, |
||||
(google.api.resource_reference) = { |
||||
type: "datafusion.googleapis.com/Instance" |
||||
} |
||||
]; |
||||
|
||||
// The maximum number of items to return. |
||||
int32 page_size = 2; |
||||
|
||||
// The next_page_token value to use if there are additional |
||||
// results to retrieve for this list request. |
||||
string page_token = 3; |
||||
} |
||||
|
||||
// List dns peering response. |
||||
message ListDnsPeeringsResponse { |
||||
// List of dns peering configs. |
||||
repeated DnsPeering dns_peerings = 1; |
||||
|
||||
// Token to retrieve the next page of results or empty if there are no more |
||||
// results in the list. |
||||
string next_page_token = 2; |
||||
} |
Loading…
Reference in new issue