123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213 |
- // Copyright 2022 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.connectors.v1;
- import "google/api/field_behavior.proto";
- import "google/api/resource.proto";
- import "google/cloud/connectors/v1/authconfig.proto";
- import "google/cloud/connectors/v1/common.proto";
- import "google/protobuf/timestamp.proto";
- option go_package = "google.golang.org/genproto/googleapis/cloud/connectors/v1;connectors";
- option java_multiple_files = true;
- option java_outer_classname = "ConnectorVersionProto";
- option java_package = "com.google.cloud.connectors.v1";
- // ConnectorVersion indicates a specific version of a connector.
- message ConnectorVersion {
- option (google.api.resource) = {
- type: "connectors.googleapis.com/ConnectorVersion"
- pattern: "projects/{project}/locations/{location}/providers/{provider}/connectors/{connector}/versions/{version}"
- };
- // Output only. Resource name of the Version.
- // Format:
- // projects/{project}/locations/{location}/providers/{provider}/connectors/{connector}/versions/{version}
- // Only global location is supported for Connector resource.
- string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Created time.
- google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Updated time.
- google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Resource labels to represent user-provided metadata.
- // Refer to cloud documentation on labels for more details.
- // https://cloud.google.com/compute/docs/labeling-resources
- map<string, string> labels = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Flag to mark the version indicating the launch stage.
- LaunchStage launch_stage = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. ReleaseVersion of the connector, for example: "1.0.1-alpha".
- string release_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. List of auth configs supported by the Connector Version.
- repeated AuthConfigTemplate auth_config_templates = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. List of config variables needed to create a connection.
- repeated ConfigVariableTemplate config_variable_templates = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Information about the runtime features supported by the Connector.
- SupportedRuntimeFeatures supported_runtime_features = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Display name.
- string display_name = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Configuration for Egress Control.
- EgressControlConfig egress_control_config = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Role grant configurations for this connector version.
- repeated RoleGrant role_grants = 14 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Role grant configuration for this config variable. It will be DEPRECATED
- // soon.
- RoleGrant role_grant = 15 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
- // Request message for Connectors.GetConnectorVersion.
- message GetConnectorVersionRequest {
- // Required. Resource name of the form:
- // `projects/*/locations/*/providers/*/connectors/*/versions/*`
- // Only global location is supported for ConnectorVersion resource.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "connectors.googleapis.com/ConnectorVersion"
- }
- ];
- // Specifies which fields of the ConnectorVersion are returned in the
- // response. Defaults to `CUSTOMER` view.
- ConnectorVersionView view = 2;
- }
- // Request message for Connectors.ListConnectorVersions.
- message ListConnectorVersionsRequest {
- // Required. Parent resource of the connectors, of the form:
- // `projects/*/locations/*/providers/*/connectors/*`
- // Only global location is supported for ConnectorVersion resource.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "connectors.googleapis.com/Connector"
- }
- ];
- // Page size.
- int32 page_size = 2;
- // Page token.
- string page_token = 3;
- // Specifies which fields of the ConnectorVersion are returned in the
- // response. Defaults to `BASIC` view.
- ConnectorVersionView view = 4;
- }
- // Response message for Connectors.ListConnectorVersions.
- message ListConnectorVersionsResponse {
- // A list of connector versions.
- repeated ConnectorVersion connector_versions = 1;
- // Next page token.
- string next_page_token = 2;
- // Locations that could not be reached.
- repeated string unreachable = 3;
- }
- // Supported runtime features of a connector version. This is passed to the
- // management layer to add a new connector version by the connector developer.
- // Details about how this proto is passed to the management layer is covered in
- // this doc - go/runtime-manifest.
- message SupportedRuntimeFeatures {
- // Specifies if the connector supports entity apis like 'createEntity'.
- bool entity_apis = 1;
- // Specifies if the connector supports action apis like 'executeAction'.
- bool action_apis = 2;
- // Specifies if the connector supports 'ExecuteSqlQuery' operation.
- bool sql_query = 3;
- }
- // Egress control config for connector runtime. These configurations define the
- // rules to identify which outbound domains/hosts needs to be whitelisted. It
- // may be a static information for a particular connector version or it is
- // derived from the configurations provided by the customer in Connection
- // resource.
- message EgressControlConfig {
- oneof oneof_backends {
- // Static Comma separated backends which are common for all Connection
- // resources. Supported formats for each backend are host:port or just
- // host (host can be ip address or domain name).
- string backends = 1;
- // Extractions Rules to extract the backends from customer provided
- // configuration.
- ExtractionRules extraction_rules = 2;
- }
- }
- // Extraction Rules to identity the backends from customer provided
- // configuration in Connection resource.
- message ExtractionRules {
- // Collection of Extraction Rule.
- repeated ExtractionRule extraction_rule = 1;
- }
- // Extraction Rule.
- message ExtractionRule {
- // Source to extract the backend from.
- message Source {
- // Type of the source.
- SourceType source_type = 1;
- // Field identifier. For example config vaiable name.
- string field_id = 2;
- }
- // Supported Source types for extraction.
- enum SourceType {
- // Default SOURCE.
- SOURCE_TYPE_UNSPECIFIED = 0;
- // Config Variable source type.
- CONFIG_VARIABLE = 1;
- }
- // Source on which the rule is applied.
- Source source = 1;
- // Regex used to extract backend details from source. If empty, whole source
- // value will be used.
- string extraction_regex = 2;
- }
- // Enum to control which fields should be included in the response.
- enum ConnectorVersionView {
- // CONNECTOR_VERSION_VIEW_UNSPECIFIED.
- CONNECTOR_VERSION_VIEW_UNSPECIFIED = 0;
- // Do not include role grant configs.
- CONNECTOR_VERSION_VIEW_BASIC = 1;
- // Include role grant configs.
- CONNECTOR_VERSION_VIEW_FULL = 2;
- }
|