Skip to content

Commit

Permalink
feat: [bigquery-connection] add support for Salesforce connections, w…
Browse files Browse the repository at this point in the history
…hich are usable only by allowlisted partners (#4403)

* feat: add support for Salesforce connections, which are usable only by allowlisted partners

feat: add cloud spanner connection properties - use_data_boost

feat: add cloud spanner connection properties - max_parallelism
PiperOrigin-RevId: 546084599

Source-Link: googleapis/googleapis@b348970

Source-Link: googleapis/googleapis-gen@fd0c44b
Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLWJpZ3F1ZXJ5LWNvbm5lY3Rpb24vLk93bEJvdC55YW1sIiwiaCI6ImZkMGM0NGI5MWUwOWFmMmM1NjgxMDMxYzQ5NzU1OTBlMGZhZjc3OTIifQ==

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

---------

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Co-authored-by: Denis DelGrosso <[email protected]>
  • Loading branch information
3 people authored Jul 7, 2023
1 parent f3e866e commit fd7489a
Show file tree
Hide file tree
Showing 8 changed files with 565 additions and 55 deletions.
41 changes: 20 additions & 21 deletions packages/google-cloud-bigquery-connection/README.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -263,6 +263,12 @@ message Connection {

// Spark properties.
SparkProperties spark = 23;

// Optional. Salesforce DataCloud properties. This field is intended for
// use only by Salesforce partner projects. This field contains properties
// for your Salesforce DataCloud connection.
SalesforceDataCloudProperties salesforce_data_cloud = 24
[(google.api.field_behavior) = OPTIONAL];
}

// Output only. The creation timestamp of the connection.
Expand Down Expand Up @@ -327,23 +333,39 @@ message CloudSpannerProperties {
// If parallelism should be used when reading from Cloud Spanner
bool use_parallelism = 2;

// Allows setting max parallelism per query when executing on Spanner
// independent compute resources. If unspecified, default values of
// parallelism are chosen that are dependent on the Cloud Spanner instance
// configuration.
//
// REQUIRES: `use_parallelism` must be set.
// REQUIRES: Either `use_data_boost` or `use_serverless_analytics` must be
// set.
int32 max_parallelism = 5;

// If the serverless analytics service should be used to read data from Cloud
// Spanner.
// Note: `use_parallelism` must be set when using serverless analytics.
bool use_serverless_analytics = 3;

// If set, the request will be executed via Spanner independent compute
// resources.
// REQUIRES: `use_parallelism` must be set.
//
// NOTE: `use_serverless_analytics` will be deprecated. Prefer
// `use_data_boost` over `use_serverless_analytics`.
bool use_data_boost = 6;

// Optional. Cloud Spanner database role for fine-grained access control.
// A database role is a collection of fine-grained access privileges. Example:
// Admin predefines roles that provides user a set of permissions (SELECT,
// INSERT, ..). The user can then specify a predefined role on a connection to
// execute their Cloud Spanner query. The role is passthrough here. If the
// user is not authorized to use the specified role, they get an error. This
// validation happens on Cloud Spanner.
// The Cloud Spanner admin should have provisioned the database role with
// appropriate permissions, such as `SELECT` and `INSERT`. Other users should
// only use roles provided by their Cloud Spanner admins.
//
// See https://cloud.google.com/spanner/docs/fgac-about for more details.
// For more details, see [About fine-grained access control]
// (https://cloud.google.com/spanner/docs/fgac-about).
//
// REQUIRES: database role name must start with uppercase/lowercase letter
// and only contain uppercase/lowercase letters, numbers, and underscores.
// REQUIRES: The database role name must start with a letter, and can only
// contain letters, numbers, and underscores.
string database_role = 4 [(google.api.field_behavior) = OPTIONAL];
}

Expand Down Expand Up @@ -476,7 +498,7 @@ message SparkProperties {
// The service account does not have any permissions associated with it when
// it is created. After creation, customers delegate permissions to the
// service account. When the connection is used in the context of a stored
// procedure for Apache Spark in BigQuery, the service account will be used to
// procedure for Apache Spark in BigQuery, the service account is used to
// connect to the desired resources in Google Cloud.
//
// The account ID is in the form of:
Expand All @@ -491,3 +513,17 @@ message SparkProperties {
SparkHistoryServerConfig spark_history_server_config = 4
[(google.api.field_behavior) = OPTIONAL];
}

// Connection properties specific to Salesforce DataCloud. This is intended for
// use only by Salesforce partner projects.
message SalesforceDataCloudProperties {
// The URL to the user's Salesforce DataCloud instance.
string instance_uri = 1;

// Output only. A unique Google-owned and Google-generated service account
// identity for the connection.
string identity = 2 [(google.api.field_behavior) = OUTPUT_ONLY];

// The ID of the user's Salesforce tenant.
string tenant_id = 3;
}
129 changes: 128 additions & 1 deletion packages/google-cloud-bigquery-connection/protos/protos.d.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit fd7489a

Please sign in to comment.