1*d5c09012SAndroid Build Coastguard Worker// Copyright 2021 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.datafusion.v1beta1; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/api/annotations.proto"; 20*d5c09012SAndroid Build Coastguard Workerimport "google/api/client.proto"; 21*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto"; 22*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/iam/v1/policy.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/longrunning/operations.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto"; 26*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 27*d5c09012SAndroid Build Coastguard Workerimport "google/rpc/status.proto"; 28*d5c09012SAndroid Build Coastguard Worker 29*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.DataFusion.V1Beta1"; 30*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/datafusion/apiv1beta1/datafusionpb;datafusionpb"; 31*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 32*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.datafusion.v1beta1"; 33*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\DataFusion\\V1beta1"; 34*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::DataFusion::V1beta1"; 35*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = { 36*d5c09012SAndroid Build Coastguard Worker type: "cloudkms.googleapis.com/CryptoKey" 37*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}" 38*d5c09012SAndroid Build Coastguard Worker}; 39*d5c09012SAndroid Build Coastguard Worker 40*d5c09012SAndroid Build Coastguard Worker// Service for creating and managing Data Fusion instances. 41*d5c09012SAndroid Build Coastguard Worker// Data Fusion enables ETL developers to build code-free, data integration 42*d5c09012SAndroid Build Coastguard Worker// pipelines via a point-and-click UI. 43*d5c09012SAndroid Build Coastguard Workerservice DataFusion { 44*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "datafusion.googleapis.com"; 45*d5c09012SAndroid Build Coastguard Worker option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; 46*d5c09012SAndroid Build Coastguard Worker 47*d5c09012SAndroid Build Coastguard Worker // Lists possible versions for Data Fusion instances in the specified project 48*d5c09012SAndroid Build Coastguard Worker // and location. 49*d5c09012SAndroid Build Coastguard Worker rpc ListAvailableVersions(ListAvailableVersionsRequest) returns (ListAvailableVersionsResponse) { 50*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 51*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*/locations/*}/versions" 52*d5c09012SAndroid Build Coastguard Worker }; 53*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 54*d5c09012SAndroid Build Coastguard Worker } 55*d5c09012SAndroid Build Coastguard Worker 56*d5c09012SAndroid Build Coastguard Worker // Lists Data Fusion instances in the specified project and location. 57*d5c09012SAndroid Build Coastguard Worker rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) { 58*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 59*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*/locations/*}/instances" 60*d5c09012SAndroid Build Coastguard Worker }; 61*d5c09012SAndroid Build Coastguard Worker } 62*d5c09012SAndroid Build Coastguard Worker 63*d5c09012SAndroid Build Coastguard Worker // Gets details of a single Data Fusion instance. 64*d5c09012SAndroid Build Coastguard Worker rpc GetInstance(GetInstanceRequest) returns (Instance) { 65*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 66*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{name=projects/*/locations/*/instances/*}" 67*d5c09012SAndroid Build Coastguard Worker }; 68*d5c09012SAndroid Build Coastguard Worker } 69*d5c09012SAndroid Build Coastguard Worker 70*d5c09012SAndroid Build Coastguard Worker // Creates a new Data Fusion instance in the specified project and location. 71*d5c09012SAndroid Build Coastguard Worker rpc CreateInstance(CreateInstanceRequest) returns (google.longrunning.Operation) { 72*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 73*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{parent=projects/*/locations/*}/instances" 74*d5c09012SAndroid Build Coastguard Worker body: "instance" 75*d5c09012SAndroid Build Coastguard Worker }; 76*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,instance,instance_id"; 77*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 78*d5c09012SAndroid Build Coastguard Worker response_type: "Instance" 79*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 80*d5c09012SAndroid Build Coastguard Worker }; 81*d5c09012SAndroid Build Coastguard Worker } 82*d5c09012SAndroid Build Coastguard Worker 83*d5c09012SAndroid Build Coastguard Worker // Deletes a single Data Fusion instance. 84*d5c09012SAndroid Build Coastguard Worker rpc DeleteInstance(DeleteInstanceRequest) returns (google.longrunning.Operation) { 85*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 86*d5c09012SAndroid Build Coastguard Worker delete: "/v1beta1/{name=projects/*/locations/*/instances/*}" 87*d5c09012SAndroid Build Coastguard Worker }; 88*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 89*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 90*d5c09012SAndroid Build Coastguard Worker response_type: "google.protobuf.Empty" 91*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 92*d5c09012SAndroid Build Coastguard Worker }; 93*d5c09012SAndroid Build Coastguard Worker } 94*d5c09012SAndroid Build Coastguard Worker 95*d5c09012SAndroid Build Coastguard Worker // Updates a single Data Fusion instance. 96*d5c09012SAndroid Build Coastguard Worker rpc UpdateInstance(UpdateInstanceRequest) returns (google.longrunning.Operation) { 97*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 98*d5c09012SAndroid Build Coastguard Worker patch: "/v1beta1/{instance.name=projects/*/locations/*/instances/*}" 99*d5c09012SAndroid Build Coastguard Worker body: "instance" 100*d5c09012SAndroid Build Coastguard Worker }; 101*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "instance,update_mask"; 102*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 103*d5c09012SAndroid Build Coastguard Worker response_type: "Instance" 104*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 105*d5c09012SAndroid Build Coastguard Worker }; 106*d5c09012SAndroid Build Coastguard Worker } 107*d5c09012SAndroid Build Coastguard Worker 108*d5c09012SAndroid Build Coastguard Worker // Restart a single Data Fusion instance. 109*d5c09012SAndroid Build Coastguard Worker // At the end of an operation instance is fully restarted. 110*d5c09012SAndroid Build Coastguard Worker rpc RestartInstance(RestartInstanceRequest) returns (google.longrunning.Operation) { 111*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 112*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/instances/*}:restart" 113*d5c09012SAndroid Build Coastguard Worker body: "*" 114*d5c09012SAndroid Build Coastguard Worker }; 115*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 116*d5c09012SAndroid Build Coastguard Worker response_type: "Instance" 117*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 118*d5c09012SAndroid Build Coastguard Worker }; 119*d5c09012SAndroid Build Coastguard Worker } 120*d5c09012SAndroid Build Coastguard Worker 121*d5c09012SAndroid Build Coastguard Worker // Upgrade a single Data Fusion instance. 122*d5c09012SAndroid Build Coastguard Worker // At the end of an operation instance is fully upgraded. 123*d5c09012SAndroid Build Coastguard Worker rpc UpgradeInstance(UpgradeInstanceRequest) returns (google.longrunning.Operation) { 124*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 125*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/instances/*}:upgrade" 126*d5c09012SAndroid Build Coastguard Worker body: "*" 127*d5c09012SAndroid Build Coastguard Worker }; 128*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 129*d5c09012SAndroid Build Coastguard Worker response_type: "Instance" 130*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 131*d5c09012SAndroid Build Coastguard Worker }; 132*d5c09012SAndroid Build Coastguard Worker } 133*d5c09012SAndroid Build Coastguard Worker 134*d5c09012SAndroid Build Coastguard Worker // Remove IAM policy that is currently set on the given resource. 135*d5c09012SAndroid Build Coastguard Worker rpc RemoveIamPolicy(RemoveIamPolicyRequest) returns (RemoveIamPolicyResponse) { 136*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 137*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{resource=projects/*/locations/*/**}:removeIamPolicy" 138*d5c09012SAndroid Build Coastguard Worker body: "*" 139*d5c09012SAndroid Build Coastguard Worker }; 140*d5c09012SAndroid Build Coastguard Worker } 141*d5c09012SAndroid Build Coastguard Worker 142*d5c09012SAndroid Build Coastguard Worker // List namespaces in a given instance 143*d5c09012SAndroid Build Coastguard Worker rpc ListNamespaces(ListNamespacesRequest) returns (ListNamespacesResponse) { 144*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 145*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*/locations/*/instances/*}/namespaces" 146*d5c09012SAndroid Build Coastguard Worker }; 147*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 148*d5c09012SAndroid Build Coastguard Worker } 149*d5c09012SAndroid Build Coastguard Worker 150*d5c09012SAndroid Build Coastguard Worker // Add DNS peering on the given resource. 151*d5c09012SAndroid Build Coastguard Worker rpc AddDnsPeering(AddDnsPeeringRequest) returns (AddDnsPeeringResponse) { 152*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 153*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:add" 154*d5c09012SAndroid Build Coastguard Worker body: "*" 155*d5c09012SAndroid Build Coastguard Worker }; 156*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 157*d5c09012SAndroid Build Coastguard Worker } 158*d5c09012SAndroid Build Coastguard Worker 159*d5c09012SAndroid Build Coastguard Worker // Remove DNS peering on the given resource. 160*d5c09012SAndroid Build Coastguard Worker rpc RemoveDnsPeering(RemoveDnsPeeringRequest) returns (RemoveDnsPeeringResponse) { 161*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 162*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:remove" 163*d5c09012SAndroid Build Coastguard Worker body: "*" 164*d5c09012SAndroid Build Coastguard Worker }; 165*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 166*d5c09012SAndroid Build Coastguard Worker } 167*d5c09012SAndroid Build Coastguard Worker 168*d5c09012SAndroid Build Coastguard Worker // List DNS peering for a given resource. 169*d5c09012SAndroid Build Coastguard Worker rpc ListDnsPeerings(ListDnsPeeringsRequest) returns (ListDnsPeeringsResponse) { 170*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 171*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:list" 172*d5c09012SAndroid Build Coastguard Worker }; 173*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 174*d5c09012SAndroid Build Coastguard Worker } 175*d5c09012SAndroid Build Coastguard Worker} 176*d5c09012SAndroid Build Coastguard Worker 177*d5c09012SAndroid Build Coastguard Worker// Network configuration for a Data Fusion instance. These configurations 178*d5c09012SAndroid Build Coastguard Worker// are used for peering with the customer network. Configurations are optional 179*d5c09012SAndroid Build Coastguard Worker// when a public Data Fusion instance is to be created. However, providing 180*d5c09012SAndroid Build Coastguard Worker// these configurations allows several benefits, such as reduced network latency 181*d5c09012SAndroid Build Coastguard Worker// while accessing the customer resources from managed Data Fusion instance 182*d5c09012SAndroid Build Coastguard Worker// nodes, as well as access to the customer on-prem resources. 183*d5c09012SAndroid Build Coastguard Workermessage NetworkConfig { 184*d5c09012SAndroid Build Coastguard Worker // Name of the network in the customer project with which the Tenant Project 185*d5c09012SAndroid Build Coastguard Worker // will be peered for executing pipelines. In case of shared VPC where the 186*d5c09012SAndroid Build Coastguard Worker // network resides in another host project the network should specified in 187*d5c09012SAndroid Build Coastguard Worker // the form of projects/{host-project-id}/global/networks/{network} 188*d5c09012SAndroid Build Coastguard Worker string network = 1; 189*d5c09012SAndroid Build Coastguard Worker 190*d5c09012SAndroid Build Coastguard Worker // The IP range in CIDR notation to use for the managed Data Fusion instance 191*d5c09012SAndroid Build Coastguard Worker // nodes. This range must not overlap with any other ranges used in the Data 192*d5c09012SAndroid Build Coastguard Worker // Fusion instance network. 193*d5c09012SAndroid Build Coastguard Worker string ip_allocation = 2; 194*d5c09012SAndroid Build Coastguard Worker} 195*d5c09012SAndroid Build Coastguard Worker 196*d5c09012SAndroid Build Coastguard Worker// The Data Fusion version. 197*d5c09012SAndroid Build Coastguard Workermessage Version { 198*d5c09012SAndroid Build Coastguard Worker // Each type represents the release availability of a CDF version 199*d5c09012SAndroid Build Coastguard Worker enum Type { 200*d5c09012SAndroid Build Coastguard Worker // Version does not have availability yet 201*d5c09012SAndroid Build Coastguard Worker TYPE_UNSPECIFIED = 0; 202*d5c09012SAndroid Build Coastguard Worker 203*d5c09012SAndroid Build Coastguard Worker // Version is under development and not considered stable 204*d5c09012SAndroid Build Coastguard Worker TYPE_PREVIEW = 1; 205*d5c09012SAndroid Build Coastguard Worker 206*d5c09012SAndroid Build Coastguard Worker // Version is available for public use 207*d5c09012SAndroid Build Coastguard Worker TYPE_GENERAL_AVAILABILITY = 2; 208*d5c09012SAndroid Build Coastguard Worker } 209*d5c09012SAndroid Build Coastguard Worker 210*d5c09012SAndroid Build Coastguard Worker // The version number of the Data Fusion instance, such as '6.0.1.0'. 211*d5c09012SAndroid Build Coastguard Worker string version_number = 1; 212*d5c09012SAndroid Build Coastguard Worker 213*d5c09012SAndroid Build Coastguard Worker // Whether this is currently the default version for Cloud Data Fusion 214*d5c09012SAndroid Build Coastguard Worker bool default_version = 2; 215*d5c09012SAndroid Build Coastguard Worker 216*d5c09012SAndroid Build Coastguard Worker // Represents a list of available feature names for a given version. 217*d5c09012SAndroid Build Coastguard Worker repeated string available_features = 3; 218*d5c09012SAndroid Build Coastguard Worker 219*d5c09012SAndroid Build Coastguard Worker // Type represents the release availability of the version 220*d5c09012SAndroid Build Coastguard Worker Type type = 4; 221*d5c09012SAndroid Build Coastguard Worker} 222*d5c09012SAndroid Build Coastguard Worker 223*d5c09012SAndroid Build Coastguard Worker// Identifies Data Fusion accelerators for an instance. 224*d5c09012SAndroid Build Coastguard Workermessage Accelerator { 225*d5c09012SAndroid Build Coastguard Worker // Each type represents an Accelerator (Add-On) supported by Cloud Data Fusion 226*d5c09012SAndroid Build Coastguard Worker // service. 227*d5c09012SAndroid Build Coastguard Worker enum AcceleratorType { 228*d5c09012SAndroid Build Coastguard Worker // Default value, if unspecified. 229*d5c09012SAndroid Build Coastguard Worker ACCELERATOR_TYPE_UNSPECIFIED = 0; 230*d5c09012SAndroid Build Coastguard Worker 231*d5c09012SAndroid Build Coastguard Worker // Change Data Capture accelerator for CDF. 232*d5c09012SAndroid Build Coastguard Worker CDC = 1; 233*d5c09012SAndroid Build Coastguard Worker 234*d5c09012SAndroid Build Coastguard Worker // Cloud Healthcare accelerator for CDF. This accelerator is to enable Cloud 235*d5c09012SAndroid Build Coastguard Worker // Healthcare specific CDF plugins developed by Healthcare team. 236*d5c09012SAndroid Build Coastguard Worker HEALTHCARE = 2; 237*d5c09012SAndroid Build Coastguard Worker } 238*d5c09012SAndroid Build Coastguard Worker 239*d5c09012SAndroid Build Coastguard Worker // The type of an accelator for a CDF instance. 240*d5c09012SAndroid Build Coastguard Worker AcceleratorType accelerator_type = 1; 241*d5c09012SAndroid Build Coastguard Worker} 242*d5c09012SAndroid Build Coastguard Worker 243*d5c09012SAndroid Build Coastguard Worker// The crypto key configuration. This field is used by the Customer-managed 244*d5c09012SAndroid Build Coastguard Worker// encryption keys (CMEK) feature. 245*d5c09012SAndroid Build Coastguard Workermessage CryptoKeyConfig { 246*d5c09012SAndroid Build Coastguard Worker // The name of the key which is used to encrypt/decrypt customer data. For key 247*d5c09012SAndroid Build Coastguard Worker // in Cloud KMS, the key should be in the format of 248*d5c09012SAndroid Build Coastguard Worker // `projects/*/locations/*/keyRings/*/cryptoKeys/*`. 249*d5c09012SAndroid Build Coastguard Worker string key_reference = 1 [(google.api.resource_reference) = { 250*d5c09012SAndroid Build Coastguard Worker type: "cloudkms.googleapis.com/CryptoKey" 251*d5c09012SAndroid Build Coastguard Worker }]; 252*d5c09012SAndroid Build Coastguard Worker} 253*d5c09012SAndroid Build Coastguard Worker 254*d5c09012SAndroid Build Coastguard Worker// Represents a Data Fusion instance. 255*d5c09012SAndroid Build Coastguard Workermessage Instance { 256*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 257*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 258*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/instances/{instance}" 259*d5c09012SAndroid Build Coastguard Worker }; 260*d5c09012SAndroid Build Coastguard Worker 261*d5c09012SAndroid Build Coastguard Worker // Represents the type of Data Fusion instance. Each type is configured with 262*d5c09012SAndroid Build Coastguard Worker // the default settings for processing and memory. 263*d5c09012SAndroid Build Coastguard Worker enum Type { 264*d5c09012SAndroid Build Coastguard Worker // No type specified. The instance creation will fail. 265*d5c09012SAndroid Build Coastguard Worker TYPE_UNSPECIFIED = 0; 266*d5c09012SAndroid Build Coastguard Worker 267*d5c09012SAndroid Build Coastguard Worker // Basic Data Fusion instance. In Basic type, the user will be able to 268*d5c09012SAndroid Build Coastguard Worker // create data pipelines using point and click UI. However, there are 269*d5c09012SAndroid Build Coastguard Worker // certain limitations, such as fewer number of concurrent pipelines, no 270*d5c09012SAndroid Build Coastguard Worker // support for streaming pipelines, etc. 271*d5c09012SAndroid Build Coastguard Worker BASIC = 1; 272*d5c09012SAndroid Build Coastguard Worker 273*d5c09012SAndroid Build Coastguard Worker // Enterprise Data Fusion instance. In Enterprise type, the user will have 274*d5c09012SAndroid Build Coastguard Worker // all features available, such as support for streaming pipelines, 275*d5c09012SAndroid Build Coastguard Worker // unlimited number of concurrent pipelines, etc. 276*d5c09012SAndroid Build Coastguard Worker ENTERPRISE = 2; 277*d5c09012SAndroid Build Coastguard Worker 278*d5c09012SAndroid Build Coastguard Worker // Developer Data Fusion instance. In Developer type, the user will have all 279*d5c09012SAndroid Build Coastguard Worker // features available but with restrictive capabilities. This is to help 280*d5c09012SAndroid Build Coastguard Worker // enterprises design and develop their data ingestion and integration 281*d5c09012SAndroid Build Coastguard Worker // pipelines at low cost. 282*d5c09012SAndroid Build Coastguard Worker DEVELOPER = 3; 283*d5c09012SAndroid Build Coastguard Worker } 284*d5c09012SAndroid Build Coastguard Worker 285*d5c09012SAndroid Build Coastguard Worker // Represents the state of a Data Fusion instance 286*d5c09012SAndroid Build Coastguard Worker enum State { 287*d5c09012SAndroid Build Coastguard Worker // Instance does not have a state yet 288*d5c09012SAndroid Build Coastguard Worker STATE_UNSPECIFIED = 0; 289*d5c09012SAndroid Build Coastguard Worker 290*d5c09012SAndroid Build Coastguard Worker // Instance is being created 291*d5c09012SAndroid Build Coastguard Worker CREATING = 1; 292*d5c09012SAndroid Build Coastguard Worker 293*d5c09012SAndroid Build Coastguard Worker // Instance is running and ready for requests 294*d5c09012SAndroid Build Coastguard Worker RUNNING = 2; 295*d5c09012SAndroid Build Coastguard Worker 296*d5c09012SAndroid Build Coastguard Worker // Instance creation failed 297*d5c09012SAndroid Build Coastguard Worker FAILED = 3; 298*d5c09012SAndroid Build Coastguard Worker 299*d5c09012SAndroid Build Coastguard Worker // Instance is being deleted 300*d5c09012SAndroid Build Coastguard Worker DELETING = 4; 301*d5c09012SAndroid Build Coastguard Worker 302*d5c09012SAndroid Build Coastguard Worker // Instance is being upgraded 303*d5c09012SAndroid Build Coastguard Worker UPGRADING = 5; 304*d5c09012SAndroid Build Coastguard Worker 305*d5c09012SAndroid Build Coastguard Worker // Instance is being restarted 306*d5c09012SAndroid Build Coastguard Worker RESTARTING = 6; 307*d5c09012SAndroid Build Coastguard Worker 308*d5c09012SAndroid Build Coastguard Worker // Instance is being updated on customer request 309*d5c09012SAndroid Build Coastguard Worker UPDATING = 7; 310*d5c09012SAndroid Build Coastguard Worker 311*d5c09012SAndroid Build Coastguard Worker // Instance is being auto-updated 312*d5c09012SAndroid Build Coastguard Worker AUTO_UPDATING = 8; 313*d5c09012SAndroid Build Coastguard Worker 314*d5c09012SAndroid Build Coastguard Worker // Instance is being auto-upgraded 315*d5c09012SAndroid Build Coastguard Worker AUTO_UPGRADING = 9; 316*d5c09012SAndroid Build Coastguard Worker 317*d5c09012SAndroid Build Coastguard Worker // Instance is disabled 318*d5c09012SAndroid Build Coastguard Worker DISABLED = 10; 319*d5c09012SAndroid Build Coastguard Worker } 320*d5c09012SAndroid Build Coastguard Worker 321*d5c09012SAndroid Build Coastguard Worker // The reason for disabling the instance if the state is DISABLED. 322*d5c09012SAndroid Build Coastguard Worker enum DisabledReason { 323*d5c09012SAndroid Build Coastguard Worker // This is an unknown reason for disabling. 324*d5c09012SAndroid Build Coastguard Worker DISABLED_REASON_UNSPECIFIED = 0; 325*d5c09012SAndroid Build Coastguard Worker 326*d5c09012SAndroid Build Coastguard Worker // The KMS key used by the instance is either revoked or denied access to 327*d5c09012SAndroid Build Coastguard Worker KMS_KEY_ISSUE = 1; 328*d5c09012SAndroid Build Coastguard Worker } 329*d5c09012SAndroid Build Coastguard Worker 330*d5c09012SAndroid Build Coastguard Worker // Output only. The name of this instance is in the form of 331*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/instances/{instance}. 332*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 333*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OUTPUT_ONLY, 334*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 335*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 336*d5c09012SAndroid Build Coastguard Worker } 337*d5c09012SAndroid Build Coastguard Worker ]; 338*d5c09012SAndroid Build Coastguard Worker 339*d5c09012SAndroid Build Coastguard Worker // A description of this instance. 340*d5c09012SAndroid Build Coastguard Worker string description = 2; 341*d5c09012SAndroid Build Coastguard Worker 342*d5c09012SAndroid Build Coastguard Worker // Required. Instance type. 343*d5c09012SAndroid Build Coastguard Worker Type type = 3 [(google.api.field_behavior) = REQUIRED]; 344*d5c09012SAndroid Build Coastguard Worker 345*d5c09012SAndroid Build Coastguard Worker // Option to enable Stackdriver Logging. 346*d5c09012SAndroid Build Coastguard Worker bool enable_stackdriver_logging = 4; 347*d5c09012SAndroid Build Coastguard Worker 348*d5c09012SAndroid Build Coastguard Worker // Option to enable Stackdriver Monitoring. 349*d5c09012SAndroid Build Coastguard Worker bool enable_stackdriver_monitoring = 5; 350*d5c09012SAndroid Build Coastguard Worker 351*d5c09012SAndroid Build Coastguard Worker // Specifies whether the Data Fusion instance should be private. If set to 352*d5c09012SAndroid Build Coastguard Worker // true, all Data Fusion nodes will have private IP addresses and will not be 353*d5c09012SAndroid Build Coastguard Worker // able to access the public internet. 354*d5c09012SAndroid Build Coastguard Worker bool private_instance = 6; 355*d5c09012SAndroid Build Coastguard Worker 356*d5c09012SAndroid Build Coastguard Worker // Network configuration options. These are required when a private Data 357*d5c09012SAndroid Build Coastguard Worker // Fusion instance is to be created. 358*d5c09012SAndroid Build Coastguard Worker NetworkConfig network_config = 7; 359*d5c09012SAndroid Build Coastguard Worker 360*d5c09012SAndroid Build Coastguard Worker // The resource labels for instance to use to annotate any related underlying 361*d5c09012SAndroid Build Coastguard Worker // resources such as Compute Engine VMs. The character '=' is not allowed to 362*d5c09012SAndroid Build Coastguard Worker // be used within the labels. 363*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 8; 364*d5c09012SAndroid Build Coastguard Worker 365*d5c09012SAndroid Build Coastguard Worker // Map of additional options used to configure the behavior of 366*d5c09012SAndroid Build Coastguard Worker // Data Fusion instance. 367*d5c09012SAndroid Build Coastguard Worker map<string, string> options = 9; 368*d5c09012SAndroid Build Coastguard Worker 369*d5c09012SAndroid Build Coastguard Worker // Output only. The time the instance was created. 370*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; 371*d5c09012SAndroid Build Coastguard Worker 372*d5c09012SAndroid Build Coastguard Worker // Output only. The time the instance was last updated. 373*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; 374*d5c09012SAndroid Build Coastguard Worker 375*d5c09012SAndroid Build Coastguard Worker // Output only. The current state of this Data Fusion instance. 376*d5c09012SAndroid Build Coastguard Worker State state = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; 377*d5c09012SAndroid Build Coastguard Worker 378*d5c09012SAndroid Build Coastguard Worker // Output only. Additional information about the current state of this Data 379*d5c09012SAndroid Build Coastguard Worker // Fusion instance if available. 380*d5c09012SAndroid Build Coastguard Worker string state_message = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; 381*d5c09012SAndroid Build Coastguard Worker 382*d5c09012SAndroid Build Coastguard Worker // Output only. Endpoint on which the Data Fusion UI is accessible. 383*d5c09012SAndroid Build Coastguard Worker string service_endpoint = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; 384*d5c09012SAndroid Build Coastguard Worker 385*d5c09012SAndroid Build Coastguard Worker // Name of the zone in which the Data Fusion instance will be created. Only 386*d5c09012SAndroid Build Coastguard Worker // DEVELOPER instances use this field. 387*d5c09012SAndroid Build Coastguard Worker string zone = 15; 388*d5c09012SAndroid Build Coastguard Worker 389*d5c09012SAndroid Build Coastguard Worker // Current version of Data Fusion. 390*d5c09012SAndroid Build Coastguard Worker string version = 16; 391*d5c09012SAndroid Build Coastguard Worker 392*d5c09012SAndroid Build Coastguard Worker // Output only. Deprecated. Use tenant_project_id instead to extract the tenant project ID. 393*d5c09012SAndroid Build Coastguard Worker string service_account = 17 [ 394*d5c09012SAndroid Build Coastguard Worker deprecated = true, 395*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OUTPUT_ONLY 396*d5c09012SAndroid Build Coastguard Worker ]; 397*d5c09012SAndroid Build Coastguard Worker 398*d5c09012SAndroid Build Coastguard Worker // Display name for an instance. 399*d5c09012SAndroid Build Coastguard Worker string display_name = 18; 400*d5c09012SAndroid Build Coastguard Worker 401*d5c09012SAndroid Build Coastguard Worker // Available versions that the instance can be upgraded to using 402*d5c09012SAndroid Build Coastguard Worker // UpdateInstanceRequest. 403*d5c09012SAndroid Build Coastguard Worker repeated Version available_version = 19; 404*d5c09012SAndroid Build Coastguard Worker 405*d5c09012SAndroid Build Coastguard Worker // Output only. Endpoint on which the REST APIs is accessible. 406*d5c09012SAndroid Build Coastguard Worker string api_endpoint = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; 407*d5c09012SAndroid Build Coastguard Worker 408*d5c09012SAndroid Build Coastguard Worker // Output only. Cloud Storage bucket generated by Data Fusion in the customer project. 409*d5c09012SAndroid Build Coastguard Worker string gcs_bucket = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; 410*d5c09012SAndroid Build Coastguard Worker 411*d5c09012SAndroid Build Coastguard Worker // List of accelerators enabled for this CDF instance. 412*d5c09012SAndroid Build Coastguard Worker repeated Accelerator accelerators = 22; 413*d5c09012SAndroid Build Coastguard Worker 414*d5c09012SAndroid Build Coastguard Worker // Output only. P4 service account for the customer project. 415*d5c09012SAndroid Build Coastguard Worker string p4_service_account = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; 416*d5c09012SAndroid Build Coastguard Worker 417*d5c09012SAndroid Build Coastguard Worker // Output only. The name of the tenant project. 418*d5c09012SAndroid Build Coastguard Worker string tenant_project_id = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; 419*d5c09012SAndroid Build Coastguard Worker 420*d5c09012SAndroid Build Coastguard Worker // User-managed service account to set on Dataproc when Cloud Data Fusion 421*d5c09012SAndroid Build Coastguard Worker // creates Dataproc to run data processing pipelines. 422*d5c09012SAndroid Build Coastguard Worker // 423*d5c09012SAndroid Build Coastguard Worker // This allows users to have fine-grained access control on Dataproc's 424*d5c09012SAndroid Build Coastguard Worker // accesses to cloud resources. 425*d5c09012SAndroid Build Coastguard Worker string dataproc_service_account = 25; 426*d5c09012SAndroid Build Coastguard Worker 427*d5c09012SAndroid Build Coastguard Worker // Option to enable granular role-based access control. 428*d5c09012SAndroid Build Coastguard Worker bool enable_rbac = 26; 429*d5c09012SAndroid Build Coastguard Worker 430*d5c09012SAndroid Build Coastguard Worker // The crypto key configuration. This field is used by the Customer-Managed 431*d5c09012SAndroid Build Coastguard Worker // Encryption Keys (CMEK) feature. 432*d5c09012SAndroid Build Coastguard Worker CryptoKeyConfig crypto_key_config = 27; 433*d5c09012SAndroid Build Coastguard Worker 434*d5c09012SAndroid Build Coastguard Worker // Output only. If the instance state is DISABLED, the reason for disabling the instance. 435*d5c09012SAndroid Build Coastguard Worker repeated DisabledReason disabled_reason = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; 436*d5c09012SAndroid Build Coastguard Worker} 437*d5c09012SAndroid Build Coastguard Worker 438*d5c09012SAndroid Build Coastguard Worker// Request message for listing Data Fusion instances. 439*d5c09012SAndroid Build Coastguard Workermessage ListInstancesRequest { 440*d5c09012SAndroid Build Coastguard Worker // Required. The project and location for which to retrieve instance information 441*d5c09012SAndroid Build Coastguard Worker // in the format projects/{project}/locations/{location}. If the location is 442*d5c09012SAndroid Build Coastguard Worker // specified as '-' (wildcard), then all regions available to the project 443*d5c09012SAndroid Build Coastguard Worker // are queried, and the results are aggregated. 444*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 445*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 446*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 447*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 448*d5c09012SAndroid Build Coastguard Worker } 449*d5c09012SAndroid Build Coastguard Worker ]; 450*d5c09012SAndroid Build Coastguard Worker 451*d5c09012SAndroid Build Coastguard Worker // The maximum number of items to return. 452*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 453*d5c09012SAndroid Build Coastguard Worker 454*d5c09012SAndroid Build Coastguard Worker // The next_page_token value to use if there are additional 455*d5c09012SAndroid Build Coastguard Worker // results to retrieve for this list request. 456*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 457*d5c09012SAndroid Build Coastguard Worker 458*d5c09012SAndroid Build Coastguard Worker // List filter. 459*d5c09012SAndroid Build Coastguard Worker string filter = 4; 460*d5c09012SAndroid Build Coastguard Worker 461*d5c09012SAndroid Build Coastguard Worker // Sort results. Supported values are "name", "name desc", or "" (unsorted). 462*d5c09012SAndroid Build Coastguard Worker string order_by = 5; 463*d5c09012SAndroid Build Coastguard Worker} 464*d5c09012SAndroid Build Coastguard Worker 465*d5c09012SAndroid Build Coastguard Worker// Response message for the list instance request. 466*d5c09012SAndroid Build Coastguard Workermessage ListInstancesResponse { 467*d5c09012SAndroid Build Coastguard Worker // Represents a list of Data Fusion instances. 468*d5c09012SAndroid Build Coastguard Worker repeated Instance instances = 1; 469*d5c09012SAndroid Build Coastguard Worker 470*d5c09012SAndroid Build Coastguard Worker // Token to retrieve the next page of results or empty if there are no more 471*d5c09012SAndroid Build Coastguard Worker // results in the list. 472*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 473*d5c09012SAndroid Build Coastguard Worker 474*d5c09012SAndroid Build Coastguard Worker // Locations that could not be reached. 475*d5c09012SAndroid Build Coastguard Worker repeated string unreachable = 3; 476*d5c09012SAndroid Build Coastguard Worker} 477*d5c09012SAndroid Build Coastguard Worker 478*d5c09012SAndroid Build Coastguard Worker// Request message for the list available versions request. 479*d5c09012SAndroid Build Coastguard Workermessage ListAvailableVersionsRequest { 480*d5c09012SAndroid Build Coastguard Worker // Required. The project and location for which to retrieve instance information 481*d5c09012SAndroid Build Coastguard Worker // in the format projects/{project}/locations/{location}. 482*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 483*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 484*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 485*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 486*d5c09012SAndroid Build Coastguard Worker } 487*d5c09012SAndroid Build Coastguard Worker ]; 488*d5c09012SAndroid Build Coastguard Worker 489*d5c09012SAndroid Build Coastguard Worker // The maximum number of items to return. 490*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 491*d5c09012SAndroid Build Coastguard Worker 492*d5c09012SAndroid Build Coastguard Worker // The next_page_token value to use if there are additional 493*d5c09012SAndroid Build Coastguard Worker // results to retrieve for this list request. 494*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 495*d5c09012SAndroid Build Coastguard Worker 496*d5c09012SAndroid Build Coastguard Worker // Whether or not to return the latest patch of every available minor version. 497*d5c09012SAndroid Build Coastguard Worker // If true, only the latest patch will be returned. Ex. if allowed versions is 498*d5c09012SAndroid Build Coastguard Worker // [6.1.1, 6.1.2, 6.2.0] then response will be [6.1.2, 6.2.0] 499*d5c09012SAndroid Build Coastguard Worker bool latest_patch_only = 4; 500*d5c09012SAndroid Build Coastguard Worker} 501*d5c09012SAndroid Build Coastguard Worker 502*d5c09012SAndroid Build Coastguard Worker// Response message for the list available versions request. 503*d5c09012SAndroid Build Coastguard Workermessage ListAvailableVersionsResponse { 504*d5c09012SAndroid Build Coastguard Worker // Represents a list of versions that are supported. 505*d5c09012SAndroid Build Coastguard Worker repeated Version available_versions = 1; 506*d5c09012SAndroid Build Coastguard Worker 507*d5c09012SAndroid Build Coastguard Worker // Token to retrieve the next page of results or empty if there are no more 508*d5c09012SAndroid Build Coastguard Worker // results in the list. 509*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 510*d5c09012SAndroid Build Coastguard Worker} 511*d5c09012SAndroid Build Coastguard Worker 512*d5c09012SAndroid Build Coastguard Worker// Request message for getting details about a Data Fusion instance. 513*d5c09012SAndroid Build Coastguard Workermessage GetInstanceRequest { 514*d5c09012SAndroid Build Coastguard Worker // Required. The instance resource name in the format 515*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/instances/{instance}. 516*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 517*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 518*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 519*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 520*d5c09012SAndroid Build Coastguard Worker } 521*d5c09012SAndroid Build Coastguard Worker ]; 522*d5c09012SAndroid Build Coastguard Worker} 523*d5c09012SAndroid Build Coastguard Worker 524*d5c09012SAndroid Build Coastguard Worker// Request message for creating a Data Fusion instance. 525*d5c09012SAndroid Build Coastguard Workermessage CreateInstanceRequest { 526*d5c09012SAndroid Build Coastguard Worker // Required. The instance's project and location in the format 527*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}. 528*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 529*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 530*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 531*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 532*d5c09012SAndroid Build Coastguard Worker } 533*d5c09012SAndroid Build Coastguard Worker ]; 534*d5c09012SAndroid Build Coastguard Worker 535*d5c09012SAndroid Build Coastguard Worker // Required. The name of the instance to create. 536*d5c09012SAndroid Build Coastguard Worker string instance_id = 2 [(google.api.field_behavior) = REQUIRED]; 537*d5c09012SAndroid Build Coastguard Worker 538*d5c09012SAndroid Build Coastguard Worker // An instance resource. 539*d5c09012SAndroid Build Coastguard Worker Instance instance = 3; 540*d5c09012SAndroid Build Coastguard Worker} 541*d5c09012SAndroid Build Coastguard Worker 542*d5c09012SAndroid Build Coastguard Worker// Request message for deleting a Data Fusion instance. 543*d5c09012SAndroid Build Coastguard Workermessage DeleteInstanceRequest { 544*d5c09012SAndroid Build Coastguard Worker // Required. The instance resource name in the format 545*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/instances/{instance} 546*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 547*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 548*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 549*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 550*d5c09012SAndroid Build Coastguard Worker } 551*d5c09012SAndroid Build Coastguard Worker ]; 552*d5c09012SAndroid Build Coastguard Worker} 553*d5c09012SAndroid Build Coastguard Worker 554*d5c09012SAndroid Build Coastguard Worker// Request message for updating a Data Fusion instance. 555*d5c09012SAndroid Build Coastguard Worker// Data Fusion only allows updating the labels, options, and stack driver 556*d5c09012SAndroid Build Coastguard Worker// settings. 557*d5c09012SAndroid Build Coastguard Workermessage UpdateInstanceRequest { 558*d5c09012SAndroid Build Coastguard Worker // Required. The instance resource that replaces the resource on the server. Currently, 559*d5c09012SAndroid Build Coastguard Worker // Data Fusion only allows replacing labels, options, and stack driver 560*d5c09012SAndroid Build Coastguard Worker // settings. All other fields will be ignored. 561*d5c09012SAndroid Build Coastguard Worker Instance instance = 1 [(google.api.field_behavior) = REQUIRED]; 562*d5c09012SAndroid Build Coastguard Worker 563*d5c09012SAndroid Build Coastguard Worker // Field mask is used to specify the fields that the update will overwrite 564*d5c09012SAndroid Build Coastguard Worker // in an instance resource. The fields specified in the update_mask are 565*d5c09012SAndroid Build Coastguard Worker // relative to the resource, not the full request. 566*d5c09012SAndroid Build Coastguard Worker // A field will be overwritten if it is in the mask. 567*d5c09012SAndroid Build Coastguard Worker // If the user does not provide a mask, all the supported fields (labels and 568*d5c09012SAndroid Build Coastguard Worker // options currently) will be overwritten. 569*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 2; 570*d5c09012SAndroid Build Coastguard Worker} 571*d5c09012SAndroid Build Coastguard Worker 572*d5c09012SAndroid Build Coastguard Worker// Request message for restarting a Data Fusion instance. 573*d5c09012SAndroid Build Coastguard Workermessage RestartInstanceRequest { 574*d5c09012SAndroid Build Coastguard Worker // Required. Name of the Data Fusion instance which need to be restarted in the form of 575*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/instances/{instance} 576*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 577*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 578*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 579*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 580*d5c09012SAndroid Build Coastguard Worker } 581*d5c09012SAndroid Build Coastguard Worker ]; 582*d5c09012SAndroid Build Coastguard Worker} 583*d5c09012SAndroid Build Coastguard Worker 584*d5c09012SAndroid Build Coastguard Worker// Request message for upgrading a Data Fusion instance. 585*d5c09012SAndroid Build Coastguard Worker// To change the instance properties, instance update should be used. 586*d5c09012SAndroid Build Coastguard Workermessage UpgradeInstanceRequest { 587*d5c09012SAndroid Build Coastguard Worker // Required. Name of the Data Fusion instance which need to be upgraded in the form of 588*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/instances/{instance} 589*d5c09012SAndroid Build Coastguard Worker // Instance will be upgraded with the latest stable version of the Data 590*d5c09012SAndroid Build Coastguard Worker // Fusion. 591*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 592*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 593*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 594*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 595*d5c09012SAndroid Build Coastguard Worker } 596*d5c09012SAndroid Build Coastguard Worker ]; 597*d5c09012SAndroid Build Coastguard Worker} 598*d5c09012SAndroid Build Coastguard Worker 599*d5c09012SAndroid Build Coastguard Worker// Represents the metadata of a long-running operation. 600*d5c09012SAndroid Build Coastguard Workermessage OperationMetadata { 601*d5c09012SAndroid Build Coastguard Worker // The time the operation was created. 602*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 1; 603*d5c09012SAndroid Build Coastguard Worker 604*d5c09012SAndroid Build Coastguard Worker // The time the operation finished running. 605*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp end_time = 2; 606*d5c09012SAndroid Build Coastguard Worker 607*d5c09012SAndroid Build Coastguard Worker // Server-defined resource path for the target of the operation. 608*d5c09012SAndroid Build Coastguard Worker string target = 3; 609*d5c09012SAndroid Build Coastguard Worker 610*d5c09012SAndroid Build Coastguard Worker // Name of the verb executed by the operation. 611*d5c09012SAndroid Build Coastguard Worker string verb = 4; 612*d5c09012SAndroid Build Coastguard Worker 613*d5c09012SAndroid Build Coastguard Worker // Human-readable status of the operation if any. 614*d5c09012SAndroid Build Coastguard Worker string status_detail = 5; 615*d5c09012SAndroid Build Coastguard Worker 616*d5c09012SAndroid Build Coastguard Worker // Identifies whether the user has requested cancellation 617*d5c09012SAndroid Build Coastguard Worker // of the operation. Operations that have successfully been cancelled 618*d5c09012SAndroid Build Coastguard Worker // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, 619*d5c09012SAndroid Build Coastguard Worker // corresponding to `Code.CANCELLED`. 620*d5c09012SAndroid Build Coastguard Worker bool requested_cancellation = 6; 621*d5c09012SAndroid Build Coastguard Worker 622*d5c09012SAndroid Build Coastguard Worker // API version used to start the operation. 623*d5c09012SAndroid Build Coastguard Worker string api_version = 7; 624*d5c09012SAndroid Build Coastguard Worker} 625*d5c09012SAndroid Build Coastguard Worker 626*d5c09012SAndroid Build Coastguard Worker// Request message for RemoveIamPolicy method. 627*d5c09012SAndroid Build Coastguard Workermessage RemoveIamPolicyRequest { 628*d5c09012SAndroid Build Coastguard Worker // Required. The resource on which IAM policy to be removed is attached to. 629*d5c09012SAndroid Build Coastguard Worker string resource = 1 [(google.api.field_behavior) = REQUIRED]; 630*d5c09012SAndroid Build Coastguard Worker} 631*d5c09012SAndroid Build Coastguard Worker 632*d5c09012SAndroid Build Coastguard Worker// Response message for RemoveIamPolicy method. 633*d5c09012SAndroid Build Coastguard Workermessage RemoveIamPolicyResponse { 634*d5c09012SAndroid Build Coastguard Worker 635*d5c09012SAndroid Build Coastguard Worker} 636*d5c09012SAndroid Build Coastguard Worker 637*d5c09012SAndroid Build Coastguard Worker// List namespaces request. 638*d5c09012SAndroid Build Coastguard Workermessage ListNamespacesRequest { 639*d5c09012SAndroid Build Coastguard Worker // Required. The instance to list its namespaces. 640*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 641*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 642*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 643*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 644*d5c09012SAndroid Build Coastguard Worker } 645*d5c09012SAndroid Build Coastguard Worker ]; 646*d5c09012SAndroid Build Coastguard Worker 647*d5c09012SAndroid Build Coastguard Worker // The maximum number of items to return. 648*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 649*d5c09012SAndroid Build Coastguard Worker 650*d5c09012SAndroid Build Coastguard Worker // The next_page_token value to use if there are additional 651*d5c09012SAndroid Build Coastguard Worker // results to retrieve for this list request. 652*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 653*d5c09012SAndroid Build Coastguard Worker 654*d5c09012SAndroid Build Coastguard Worker // By default, only basic information about a namespace is returned 655*d5c09012SAndroid Build Coastguard Worker // (e.g. name). When `NAMESPACE_VIEW_FULL` is specified, additional 656*d5c09012SAndroid Build Coastguard Worker // information associated with a namespace gets returned 657*d5c09012SAndroid Build Coastguard Worker // (e.g. IAM policy set on the namespace) 658*d5c09012SAndroid Build Coastguard Worker NamespaceView view = 4; 659*d5c09012SAndroid Build Coastguard Worker} 660*d5c09012SAndroid Build Coastguard Worker 661*d5c09012SAndroid Build Coastguard Worker// IAMPolicy encapsulates the IAM policy name, definition and status of 662*d5c09012SAndroid Build Coastguard Worker// policy fetching. 663*d5c09012SAndroid Build Coastguard Workermessage IAMPolicy { 664*d5c09012SAndroid Build Coastguard Worker // Policy definition if IAM policy fetching is successful, 665*d5c09012SAndroid Build Coastguard Worker // otherwise empty. 666*d5c09012SAndroid Build Coastguard Worker google.iam.v1.Policy policy = 1; 667*d5c09012SAndroid Build Coastguard Worker 668*d5c09012SAndroid Build Coastguard Worker // Status of iam policy fetching. 669*d5c09012SAndroid Build Coastguard Worker google.rpc.Status status = 2; 670*d5c09012SAndroid Build Coastguard Worker} 671*d5c09012SAndroid Build Coastguard Worker 672*d5c09012SAndroid Build Coastguard Worker// Represents the information of a namespace 673*d5c09012SAndroid Build Coastguard Workermessage Namespace { 674*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 675*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Namespace" 676*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/instances/{instance}/namespaces/{namespace}" 677*d5c09012SAndroid Build Coastguard Worker }; 678*d5c09012SAndroid Build Coastguard Worker 679*d5c09012SAndroid Build Coastguard Worker // Name of the given namespace. 680*d5c09012SAndroid Build Coastguard Worker string name = 1; 681*d5c09012SAndroid Build Coastguard Worker 682*d5c09012SAndroid Build Coastguard Worker // IAM policy associated with this namespace. 683*d5c09012SAndroid Build Coastguard Worker IAMPolicy iam_policy = 2; 684*d5c09012SAndroid Build Coastguard Worker} 685*d5c09012SAndroid Build Coastguard Worker 686*d5c09012SAndroid Build Coastguard Worker// List namespaces response. 687*d5c09012SAndroid Build Coastguard Workermessage ListNamespacesResponse { 688*d5c09012SAndroid Build Coastguard Worker // List of namespaces 689*d5c09012SAndroid Build Coastguard Worker repeated Namespace namespaces = 1; 690*d5c09012SAndroid Build Coastguard Worker 691*d5c09012SAndroid Build Coastguard Worker // Token to retrieve the next page of results or empty if there are no more 692*d5c09012SAndroid Build Coastguard Worker // results in the list. 693*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 694*d5c09012SAndroid Build Coastguard Worker} 695*d5c09012SAndroid Build Coastguard Worker 696*d5c09012SAndroid Build Coastguard Worker// DNS peering configuration. These configurations are used to create 697*d5c09012SAndroid Build Coastguard Worker// DNS peering with the customer Cloud DNS. 698*d5c09012SAndroid Build Coastguard Workermessage DnsPeering { 699*d5c09012SAndroid Build Coastguard Worker // Required. Name of the zone. 700*d5c09012SAndroid Build Coastguard Worker string zone = 1 [(google.api.field_behavior) = REQUIRED]; 701*d5c09012SAndroid Build Coastguard Worker 702*d5c09012SAndroid Build Coastguard Worker // Required. Name of the dns. 703*d5c09012SAndroid Build Coastguard Worker string domain = 2 [(google.api.field_behavior) = REQUIRED]; 704*d5c09012SAndroid Build Coastguard Worker 705*d5c09012SAndroid Build Coastguard Worker // Optional. Optional description of the dns zone. 706*d5c09012SAndroid Build Coastguard Worker string description = 3 [(google.api.field_behavior) = OPTIONAL]; 707*d5c09012SAndroid Build Coastguard Worker 708*d5c09012SAndroid Build Coastguard Worker // Optional. Optional target project to which dns peering should happen. 709*d5c09012SAndroid Build Coastguard Worker string target_project = 4 [(google.api.field_behavior) = OPTIONAL]; 710*d5c09012SAndroid Build Coastguard Worker 711*d5c09012SAndroid Build Coastguard Worker // Optional. Optional target network to which dns peering should happen. 712*d5c09012SAndroid Build Coastguard Worker string target_network = 5 [(google.api.field_behavior) = OPTIONAL]; 713*d5c09012SAndroid Build Coastguard Worker} 714*d5c09012SAndroid Build Coastguard Worker 715*d5c09012SAndroid Build Coastguard Worker// Request message to create dns peering. 716*d5c09012SAndroid Build Coastguard Workermessage AddDnsPeeringRequest { 717*d5c09012SAndroid Build Coastguard Worker // Required. The resource on which DNS peering will be created. 718*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 719*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 720*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 721*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 722*d5c09012SAndroid Build Coastguard Worker } 723*d5c09012SAndroid Build Coastguard Worker ]; 724*d5c09012SAndroid Build Coastguard Worker 725*d5c09012SAndroid Build Coastguard Worker // Dns peering config. 726*d5c09012SAndroid Build Coastguard Worker DnsPeering dns_peering = 2; 727*d5c09012SAndroid Build Coastguard Worker} 728*d5c09012SAndroid Build Coastguard Worker 729*d5c09012SAndroid Build Coastguard Worker// Response message for set dns peering method. 730*d5c09012SAndroid Build Coastguard Workermessage AddDnsPeeringResponse { 731*d5c09012SAndroid Build Coastguard Worker 732*d5c09012SAndroid Build Coastguard Worker} 733*d5c09012SAndroid Build Coastguard Worker 734*d5c09012SAndroid Build Coastguard Worker// A view for Namespace 735*d5c09012SAndroid Build Coastguard Workerenum NamespaceView { 736*d5c09012SAndroid Build Coastguard Worker // Default/unset value, which will use BASIC view. 737*d5c09012SAndroid Build Coastguard Worker NAMESPACE_VIEW_UNSPECIFIED = 0; 738*d5c09012SAndroid Build Coastguard Worker 739*d5c09012SAndroid Build Coastguard Worker // Show the most basic metadata of a namespace 740*d5c09012SAndroid Build Coastguard Worker NAMESPACE_VIEW_BASIC = 1; 741*d5c09012SAndroid Build Coastguard Worker 742*d5c09012SAndroid Build Coastguard Worker // Returns all metadata of a namespace 743*d5c09012SAndroid Build Coastguard Worker NAMESPACE_VIEW_FULL = 2; 744*d5c09012SAndroid Build Coastguard Worker} 745*d5c09012SAndroid Build Coastguard Worker 746*d5c09012SAndroid Build Coastguard Worker// Request message to remove dns peering. 747*d5c09012SAndroid Build Coastguard Workermessage RemoveDnsPeeringRequest { 748*d5c09012SAndroid Build Coastguard Worker // Required. The resource on which DNS peering will be removed. 749*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 750*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 751*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 752*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 753*d5c09012SAndroid Build Coastguard Worker } 754*d5c09012SAndroid Build Coastguard Worker ]; 755*d5c09012SAndroid Build Coastguard Worker 756*d5c09012SAndroid Build Coastguard Worker // Required. The zone to be removed. 757*d5c09012SAndroid Build Coastguard Worker string zone = 2 [(google.api.field_behavior) = REQUIRED]; 758*d5c09012SAndroid Build Coastguard Worker} 759*d5c09012SAndroid Build Coastguard Worker 760*d5c09012SAndroid Build Coastguard Worker// Response message for set dns peering method. 761*d5c09012SAndroid Build Coastguard Workermessage RemoveDnsPeeringResponse { 762*d5c09012SAndroid Build Coastguard Worker 763*d5c09012SAndroid Build Coastguard Worker} 764*d5c09012SAndroid Build Coastguard Worker 765*d5c09012SAndroid Build Coastguard Worker// List dns peering request. 766*d5c09012SAndroid Build Coastguard Workermessage ListDnsPeeringsRequest { 767*d5c09012SAndroid Build Coastguard Worker // Required. The resource on which dns peering will be listed. 768*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 769*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 770*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 771*d5c09012SAndroid Build Coastguard Worker type: "datafusion.googleapis.com/Instance" 772*d5c09012SAndroid Build Coastguard Worker } 773*d5c09012SAndroid Build Coastguard Worker ]; 774*d5c09012SAndroid Build Coastguard Worker 775*d5c09012SAndroid Build Coastguard Worker // The maximum number of items to return. 776*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 777*d5c09012SAndroid Build Coastguard Worker 778*d5c09012SAndroid Build Coastguard Worker // The next_page_token value to use if there are additional 779*d5c09012SAndroid Build Coastguard Worker // results to retrieve for this list request. 780*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 781*d5c09012SAndroid Build Coastguard Worker} 782*d5c09012SAndroid Build Coastguard Worker 783*d5c09012SAndroid Build Coastguard Worker// List dns peering response. 784*d5c09012SAndroid Build Coastguard Workermessage ListDnsPeeringsResponse { 785*d5c09012SAndroid Build Coastguard Worker // List of dns peering configs. 786*d5c09012SAndroid Build Coastguard Worker repeated DnsPeering dns_peerings = 1; 787*d5c09012SAndroid Build Coastguard Worker 788*d5c09012SAndroid Build Coastguard Worker // Token to retrieve the next page of results or empty if there are no more 789*d5c09012SAndroid Build Coastguard Worker // results in the list. 790*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 791*d5c09012SAndroid Build Coastguard Worker} 792