@pulumi/databricks 0.0.1-alpha.1648473134
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +202 -0
- package/README.md +303 -0
- package/awsS3Mount.d.ts +50 -0
- package/awsS3Mount.js +63 -0
- package/awsS3Mount.js.map +1 -0
- package/azureAdlsGen1Mount.d.ts +65 -0
- package/azureAdlsGen1Mount.js +85 -0
- package/azureAdlsGen1Mount.js.map +1 -0
- package/azureAdlsGen2Mount.d.ts +68 -0
- package/azureAdlsGen2Mount.js +93 -0
- package/azureAdlsGen2Mount.js.map +1 -0
- package/azureBlobMount.d.ts +62 -0
- package/azureBlobMount.js +83 -0
- package/azureBlobMount.js.map +1 -0
- package/catalog.d.ts +124 -0
- package/catalog.js +88 -0
- package/catalog.js.map +1 -0
- package/cluster.d.ts +332 -0
- package/cluster.js +121 -0
- package/cluster.js.map +1 -0
- package/clusterPolicy.d.ts +112 -0
- package/clusterPolicy.js +97 -0
- package/clusterPolicy.js.map +1 -0
- package/config/index.d.ts +1 -0
- package/config/index.js +21 -0
- package/config/index.js.map +1 -0
- package/config/vars.d.ts +20 -0
- package/config/vars.js +127 -0
- package/config/vars.js.map +1 -0
- package/dbfsFile.d.ts +91 -0
- package/dbfsFile.js +71 -0
- package/dbfsFile.js.map +1 -0
- package/directory.d.ts +72 -0
- package/directory.js +65 -0
- package/directory.js.map +1 -0
- package/externalLocation.d.ts +114 -0
- package/externalLocation.js +80 -0
- package/externalLocation.js.map +1 -0
- package/getAwsAssumeRolePolicy.d.ts +47 -0
- package/getAwsAssumeRolePolicy.js +24 -0
- package/getAwsAssumeRolePolicy.js.map +1 -0
- package/getAwsBucketPolicy.d.ts +59 -0
- package/getAwsBucketPolicy.js +36 -0
- package/getAwsBucketPolicy.js.map +1 -0
- package/getAwsCrossAccountPolicy.d.ts +59 -0
- package/getAwsCrossAccountPolicy.js +47 -0
- package/getAwsCrossAccountPolicy.js.map +1 -0
- package/getCatalogs.d.ts +54 -0
- package/getCatalogs.js +43 -0
- package/getCatalogs.js.map +1 -0
- package/getClusters.d.ts +69 -0
- package/getClusters.js +57 -0
- package/getClusters.js.map +1 -0
- package/getCurrentUser.d.ts +39 -0
- package/getCurrentUser.js +38 -0
- package/getCurrentUser.js.map +1 -0
- package/getDbfsFile.d.ts +69 -0
- package/getDbfsFile.js +44 -0
- package/getDbfsFile.js.map +1 -0
- package/getDbfsFilePaths.d.ts +68 -0
- package/getDbfsFilePaths.js +46 -0
- package/getDbfsFilePaths.js.map +1 -0
- package/getGroup.d.ts +166 -0
- package/getGroup.js +46 -0
- package/getGroup.js.map +1 -0
- package/getJobs.d.ts +47 -0
- package/getJobs.js +30 -0
- package/getJobs.js.map +1 -0
- package/getNodeType.d.ts +173 -0
- package/getNodeType.js +71 -0
- package/getNodeType.js.map +1 -0
- package/getNotebook.d.ts +93 -0
- package/getNotebook.js +39 -0
- package/getNotebook.js.map +1 -0
- package/getNotebookPaths.d.ts +58 -0
- package/getNotebookPaths.js +36 -0
- package/getNotebookPaths.js.map +1 -0
- package/getSchemas.d.ts +65 -0
- package/getSchemas.js +45 -0
- package/getSchemas.js.map +1 -0
- package/getSparkVersion.d.ts +150 -0
- package/getSparkVersion.js +70 -0
- package/getSparkVersion.js.map +1 -0
- package/getTables.d.ts +75 -0
- package/getTables.js +47 -0
- package/getTables.js.map +1 -0
- package/getUser.d.ts +78 -0
- package/getUser.js +39 -0
- package/getUser.js.map +1 -0
- package/getZones.d.ts +29 -0
- package/getZones.js +26 -0
- package/getZones.js.map +1 -0
- package/gitCredential.d.ts +48 -0
- package/gitCredential.js +64 -0
- package/gitCredential.js.map +1 -0
- package/globalInitScript.d.ts +99 -0
- package/globalInitScript.js +68 -0
- package/globalInitScript.js.map +1 -0
- package/grants.d.ts +58 -0
- package/grants.js +64 -0
- package/grants.js.map +1 -0
- package/group.d.ts +131 -0
- package/group.js +83 -0
- package/group.js.map +1 -0
- package/groupInstanceProfile.d.ts +96 -0
- package/groupInstanceProfile.js +93 -0
- package/groupInstanceProfile.js.map +1 -0
- package/index.d.ts +81 -0
- package/index.js +362 -0
- package/index.js.map +1 -0
- package/instancePool.d.ts +166 -0
- package/instancePool.js +93 -0
- package/instancePool.js.map +1 -0
- package/instanceProfile.d.ts +180 -0
- package/instanceProfile.js +161 -0
- package/instanceProfile.js.map +1 -0
- package/ipAccessList.d.ts +128 -0
- package/ipAccessList.js +108 -0
- package/ipAccessList.js.map +1 -0
- package/job.d.ts +228 -0
- package/job.js +102 -0
- package/job.js.map +1 -0
- package/library.d.ts +183 -0
- package/library.js +189 -0
- package/library.js.map +1 -0
- package/metastore.d.ts +102 -0
- package/metastore.js +75 -0
- package/metastore.js.map +1 -0
- package/metastoreAssignment.d.ts +94 -0
- package/metastoreAssignment.js +81 -0
- package/metastoreAssignment.js.map +1 -0
- package/metastoreDataAccess.d.ts +85 -0
- package/metastoreDataAccess.js +73 -0
- package/metastoreDataAccess.js.map +1 -0
- package/mlflowExperiment.d.ts +122 -0
- package/mlflowExperiment.js +99 -0
- package/mlflowExperiment.js.map +1 -0
- package/mlflowModel.d.ts +131 -0
- package/mlflowModel.js +107 -0
- package/mlflowModel.js.map +1 -0
- package/mlflowWebhook.d.ts +129 -0
- package/mlflowWebhook.js +100 -0
- package/mlflowWebhook.js.map +1 -0
- package/mount.d.ts +89 -0
- package/mount.js +76 -0
- package/mount.js.map +1 -0
- package/mwsCredentials.d.ts +137 -0
- package/mwsCredentials.js +115 -0
- package/mwsCredentials.js.map +1 -0
- package/mwsCustomerManagedKeys.d.ts +257 -0
- package/mwsCustomerManagedKeys.js +226 -0
- package/mwsCustomerManagedKeys.js.map +1 -0
- package/mwsLogDelivery.d.ts +219 -0
- package/mwsLogDelivery.js +144 -0
- package/mwsLogDelivery.js.map +1 -0
- package/mwsNetworks.d.ts +129 -0
- package/mwsNetworks.js +89 -0
- package/mwsNetworks.js.map +1 -0
- package/mwsPrivateAccessSettings.d.ts +137 -0
- package/mwsPrivateAccessSettings.js +74 -0
- package/mwsPrivateAccessSettings.js.map +1 -0
- package/mwsStorageConfigurations.d.ts +122 -0
- package/mwsStorageConfigurations.js +106 -0
- package/mwsStorageConfigurations.js.map +1 -0
- package/mwsVpcEndpoint.d.ts +122 -0
- package/mwsVpcEndpoint.js +79 -0
- package/mwsVpcEndpoint.js.map +1 -0
- package/mwsWorkspaces.d.ts +222 -0
- package/mwsWorkspaces.js +106 -0
- package/mwsWorkspaces.js.map +1 -0
- package/notebook.d.ts +128 -0
- package/notebook.js +77 -0
- package/notebook.js.map +1 -0
- package/oboToken.d.ts +98 -0
- package/oboToken.js +82 -0
- package/oboToken.js.map +1 -0
- package/package.json +28 -0
- package/package.json.bak +28 -0
- package/package.json.dev +28 -0
- package/permissions.d.ts +211 -0
- package/permissions.js +97 -0
- package/permissions.js.map +1 -0
- package/pipeline.d.ts +200 -0
- package/pipeline.js +134 -0
- package/pipeline.js.map +1 -0
- package/provider.d.ts +61 -0
- package/provider.js +64 -0
- package/provider.js.map +1 -0
- package/repo.d.ts +117 -0
- package/repo.js +71 -0
- package/repo.js.map +1 -0
- package/schema.d.ts +149 -0
- package/schema.js +106 -0
- package/schema.js.map +1 -0
- package/scripts/install-pulumi-plugin.js +21 -0
- package/secret.d.ts +115 -0
- package/secret.js +99 -0
- package/secret.js.map +1 -0
- package/secretAcl.d.ts +115 -0
- package/secretAcl.js +105 -0
- package/secretAcl.js.map +1 -0
- package/secretScope.d.ts +85 -0
- package/secretScope.js +64 -0
- package/secretScope.js.map +1 -0
- package/servicePrincipal.d.ts +142 -0
- package/servicePrincipal.js +83 -0
- package/servicePrincipal.js.map +1 -0
- package/sqlDashboard.d.ts +90 -0
- package/sqlDashboard.js +99 -0
- package/sqlDashboard.js.map +1 -0
- package/sqlEndpoint.d.ts +249 -0
- package/sqlEndpoint.js +128 -0
- package/sqlEndpoint.js.map +1 -0
- package/sqlGlobalConfig.d.ts +157 -0
- package/sqlGlobalConfig.js +115 -0
- package/sqlGlobalConfig.js.map +1 -0
- package/sqlPermissions.d.ts +191 -0
- package/sqlPermissions.js +139 -0
- package/sqlPermissions.js.map +1 -0
- package/sqlQuery.d.ts +131 -0
- package/sqlQuery.js +139 -0
- package/sqlQuery.js.map +1 -0
- package/sqlVisualization.d.ts +105 -0
- package/sqlVisualization.js +119 -0
- package/sqlVisualization.js.map +1 -0
- package/sqlWidget.d.ts +109 -0
- package/sqlWidget.js +114 -0
- package/sqlWidget.js.map +1 -0
- package/storageCredential.d.ts +122 -0
- package/storageCredential.js +118 -0
- package/storageCredential.js.map +1 -0
- package/table.d.ts +249 -0
- package/table.js +157 -0
- package/table.js.map +1 -0
- package/token.d.ts +102 -0
- package/token.js +84 -0
- package/token.js.map +1 -0
- package/types/index.d.ts +3 -0
- package/types/index.js +11 -0
- package/types/index.js.map +1 -0
- package/types/input.d.ts +1209 -0
- package/types/input.js +5 -0
- package/types/input.js.map +1 -0
- package/types/output.d.ts +1222 -0
- package/types/output.js +5 -0
- package/types/output.js.map +1 -0
- package/user.d.ts +149 -0
- package/user.js +91 -0
- package/user.js.map +1 -0
- package/userInstanceProfile.d.ts +93 -0
- package/userInstanceProfile.js +90 -0
- package/userInstanceProfile.js.map +1 -0
- package/userRole.d.ts +106 -0
- package/userRole.js +103 -0
- package/userRole.js.map +1 -0
- package/utilities.d.ts +4 -0
- package/utilities.js +57 -0
- package/utilities.js.map +1 -0
- package/workspaceConf.d.ts +76 -0
- package/workspaceConf.js +71 -0
- package/workspaceConf.js.map +1 -0
package/sqlDashboard.js
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.SqlDashboard = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("./utilities");
|
|
8
|
+
/**
|
|
9
|
+
* This resource is used to manage [Databricks SQL Dashboards](https://docs.databricks.com/sql/user/dashboards/index.html). To manage [SQLA resources](https://docs.databricks.com/sql/get-started/concepts.html) you must have `databricksSqlAccess` on your databricks.Group or databricks_user.
|
|
10
|
+
*
|
|
11
|
+
* **Note:** documentation for this resource is a work in progress.
|
|
12
|
+
*
|
|
13
|
+
* A dashboard may have one or more widgets.
|
|
14
|
+
*
|
|
15
|
+
* ## Example Usage
|
|
16
|
+
*
|
|
17
|
+
* ```typescript
|
|
18
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
19
|
+
* import * as databricks from "@pulumi/databricks";
|
|
20
|
+
*
|
|
21
|
+
* const d1 = new databricks.SqlDashboard("d1", {
|
|
22
|
+
* tags: [
|
|
23
|
+
* "some-tag",
|
|
24
|
+
* "another-tag",
|
|
25
|
+
* ],
|
|
26
|
+
* });
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* Example permission to share dashboard with all users:
|
|
30
|
+
*
|
|
31
|
+
* ```typescript
|
|
32
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
33
|
+
* import * as databricks from "@pulumi/databricks";
|
|
34
|
+
*
|
|
35
|
+
* const d1 = new databricks.Permissions("d1", {
|
|
36
|
+
* sqlDashboardId: databricks_sql_dashboard.d1.id,
|
|
37
|
+
* accessControls: [{
|
|
38
|
+
* groupName: data.databricks_group.users.display_name,
|
|
39
|
+
* permissionLevel: "CAN_RUN",
|
|
40
|
+
* }],
|
|
41
|
+
* });
|
|
42
|
+
* ```
|
|
43
|
+
* ## Related Resources
|
|
44
|
+
*
|
|
45
|
+
* The following resources are often used in the same context:
|
|
46
|
+
*
|
|
47
|
+
* * End to end workspace management guide.
|
|
48
|
+
* * databricks.SqlEndpoint to manage Databricks SQL [Endpoints](https://docs.databricks.com/sql/admin/sql-endpoints.html).
|
|
49
|
+
* * databricks.SqlGlobalConfig to configure the security policy, databricks_instance_profile, and [data access properties](https://docs.databricks.com/sql/admin/data-access-configuration.html) for all databricks.SqlEndpoint of workspace.
|
|
50
|
+
* * databricks.SqlPermissions to manage data object access control lists in Databricks workspaces for things like tables, views, databases, and [more](https://docs.databricks.com/security/access-control/table-acls/object-privileges.html).
|
|
51
|
+
*
|
|
52
|
+
* ## Import
|
|
53
|
+
*
|
|
54
|
+
* -> **Note** Importing this resource is not currently supported.
|
|
55
|
+
*/
|
|
56
|
+
class SqlDashboard extends pulumi.CustomResource {
|
|
57
|
+
constructor(name, argsOrState, opts) {
|
|
58
|
+
let resourceInputs = {};
|
|
59
|
+
opts = opts || {};
|
|
60
|
+
if (opts.id) {
|
|
61
|
+
const state = argsOrState;
|
|
62
|
+
resourceInputs["name"] = state ? state.name : undefined;
|
|
63
|
+
resourceInputs["tags"] = state ? state.tags : undefined;
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
const args = argsOrState;
|
|
67
|
+
resourceInputs["name"] = args ? args.name : undefined;
|
|
68
|
+
resourceInputs["tags"] = args ? args.tags : undefined;
|
|
69
|
+
}
|
|
70
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
71
|
+
super(SqlDashboard.__pulumiType, name, resourceInputs, opts);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Get an existing SqlDashboard resource's state with the given name, ID, and optional extra
|
|
75
|
+
* properties used to qualify the lookup.
|
|
76
|
+
*
|
|
77
|
+
* @param name The _unique_ name of the resulting resource.
|
|
78
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
79
|
+
* @param state Any extra arguments used during the lookup.
|
|
80
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
81
|
+
*/
|
|
82
|
+
static get(name, id, state, opts) {
|
|
83
|
+
return new SqlDashboard(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Returns true if the given object is an instance of SqlDashboard. This is designed to work even
|
|
87
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
88
|
+
*/
|
|
89
|
+
static isInstance(obj) {
|
|
90
|
+
if (obj === undefined || obj === null) {
|
|
91
|
+
return false;
|
|
92
|
+
}
|
|
93
|
+
return obj['__pulumiType'] === SqlDashboard.__pulumiType;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
exports.SqlDashboard = SqlDashboard;
|
|
97
|
+
/** @internal */
|
|
98
|
+
SqlDashboard.__pulumiType = 'databricks:index/sqlDashboard:SqlDashboard';
|
|
99
|
+
//# sourceMappingURL=sqlDashboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlDashboard.js","sourceRoot":"","sources":["../sqlDashboard.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAa,YAAa,SAAQ,MAAM,CAAC,cAAc;IAuCnD,YAAY,IAAY,EAAE,WAAkD,EAAE,IAAmC;QAC7G,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA4C,CAAC;YAC3D,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3D;aAAM;YACH,MAAM,IAAI,GAAG,WAA2C,CAAC;YACzD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;SACzD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;IApDD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAyB,EAAE,IAAmC;QACvH,OAAO,IAAI,YAAY,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACnE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,YAAY,CAAC,YAAY,CAAC;IAC7D,CAAC;;AA1BL,oCAsDC;AAxCG,gBAAgB;AACO,yBAAY,GAAG,4CAA4C,CAAC"}
|
package/sqlEndpoint.d.ts
ADDED
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import { input as inputs, output as outputs } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* This resource is used to manage [Databricks SQL Endpoints](https://docs.databricks.com/sql/admin/sql-endpoints.html). To create [SQL endpoints](https://docs.databricks.com/sql/get-started/concepts.html) you must have `databricksSqlAccess` on your databricks.Group or databricks_user.
|
|
5
|
+
*
|
|
6
|
+
* ## Example Usage
|
|
7
|
+
*
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
10
|
+
* import * as databricks from "@pulumi/databricks";
|
|
11
|
+
*
|
|
12
|
+
* const me = pulumi.output(databricks.getCurrentUser());
|
|
13
|
+
* const thisSqlEndpoint = new databricks.SqlEndpoint("this", {
|
|
14
|
+
* clusterSize: "Small",
|
|
15
|
+
* maxNumClusters: 1,
|
|
16
|
+
* tags: {
|
|
17
|
+
* customTags: [{
|
|
18
|
+
* key: "City",
|
|
19
|
+
* value: "Amsterdam",
|
|
20
|
+
* }],
|
|
21
|
+
* },
|
|
22
|
+
* });
|
|
23
|
+
* ```
|
|
24
|
+
* ## Access Control
|
|
25
|
+
*
|
|
26
|
+
* * databricks.Permissions can control which groups or individual users can *Can Use* or *Can Manage* SQL endpoints.
|
|
27
|
+
* * `databricksSqlAccess` on databricks.Group or databricks_user.
|
|
28
|
+
*
|
|
29
|
+
* ## Related Resources
|
|
30
|
+
*
|
|
31
|
+
* The following resources are often used in the same context:
|
|
32
|
+
*
|
|
33
|
+
* * End to end workspace management guide.
|
|
34
|
+
* * databricks.InstanceProfile to manage AWS EC2 instance profiles that users can launch databricks.Cluster and access data, like databricks_mount.
|
|
35
|
+
* * databricks.SqlDashboard to manage Databricks SQL [Dashboards](https://docs.databricks.com/sql/user/dashboards/index.html).
|
|
36
|
+
* * databricks.SqlGlobalConfig to configure the security policy, databricks_instance_profile, and [data access properties](https://docs.databricks.com/sql/admin/data-access-configuration.html) for all databricks.SqlEndpoint of workspace.
|
|
37
|
+
* * databricks.SqlPermissions to manage data object access control lists in Databricks workspaces for things like tables, views, databases, and [more](https://docs.databricks.com/security/access-control/table-acls/object-privileges.html).
|
|
38
|
+
*
|
|
39
|
+
* ## Import
|
|
40
|
+
*
|
|
41
|
+
* You can import a `databricks_sql_endpoint` resource with ID like the followingbash
|
|
42
|
+
*
|
|
43
|
+
* ```sh
|
|
44
|
+
* $ pulumi import databricks:index/sqlEndpoint:SqlEndpoint this <endpoint-id>
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
export declare class SqlEndpoint extends pulumi.CustomResource {
|
|
48
|
+
/**
|
|
49
|
+
* Get an existing SqlEndpoint resource's state with the given name, ID, and optional extra
|
|
50
|
+
* properties used to qualify the lookup.
|
|
51
|
+
*
|
|
52
|
+
* @param name The _unique_ name of the resulting resource.
|
|
53
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
54
|
+
* @param state Any extra arguments used during the lookup.
|
|
55
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
56
|
+
*/
|
|
57
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SqlEndpointState, opts?: pulumi.CustomResourceOptions): SqlEndpoint;
|
|
58
|
+
/**
|
|
59
|
+
* Returns true if the given object is an instance of SqlEndpoint. This is designed to work even
|
|
60
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
61
|
+
*/
|
|
62
|
+
static isInstance(obj: any): obj is SqlEndpoint;
|
|
63
|
+
/**
|
|
64
|
+
* Time in minutes until an idle SQL endpoint terminates all clusters and stops. This field is optional. The default is 120, set to 0 to disable the auto stop.
|
|
65
|
+
*/
|
|
66
|
+
readonly autoStopMins: pulumi.Output<number | undefined>;
|
|
67
|
+
/**
|
|
68
|
+
* block, consisting of following fields:
|
|
69
|
+
*/
|
|
70
|
+
readonly channel: pulumi.Output<outputs.SqlEndpointChannel | undefined>;
|
|
71
|
+
/**
|
|
72
|
+
* The size of the clusters allocated to the endpoint: "2X-Small", "X-Small", "Small", "Medium", "Large", "X-Large", "2X-Large", "3X-Large", "4X-Large".
|
|
73
|
+
*/
|
|
74
|
+
readonly clusterSize: pulumi.Output<string>;
|
|
75
|
+
/**
|
|
76
|
+
* ID of the data source for this endpoint. This is used to bind an SQLA query to an endpoint.
|
|
77
|
+
*/
|
|
78
|
+
readonly dataSourceId: pulumi.Output<string>;
|
|
79
|
+
/**
|
|
80
|
+
* Whether to enable [Photon](https://databricks.com/product/delta-engine). This field is optional and is enabled by default.
|
|
81
|
+
*/
|
|
82
|
+
readonly enablePhoton: pulumi.Output<boolean | undefined>;
|
|
83
|
+
/**
|
|
84
|
+
* Whether this SQL endpoint is a Serverless endpoint. To use a Serverless SQL endpoint, you must enable Serverless SQL endpoints for the workspace.
|
|
85
|
+
*/
|
|
86
|
+
readonly enableServerlessCompute: pulumi.Output<boolean | undefined>;
|
|
87
|
+
readonly id: pulumi.Output<string>;
|
|
88
|
+
readonly instanceProfileArn: pulumi.Output<string | undefined>;
|
|
89
|
+
/**
|
|
90
|
+
* JDBC connection string.
|
|
91
|
+
*/
|
|
92
|
+
readonly jdbcUrl: pulumi.Output<string>;
|
|
93
|
+
/**
|
|
94
|
+
* Maximum number of clusters available when a SQL endpoint is running. This field is required. If multi-cluster load balancing is not enabled, this is default to `1`.
|
|
95
|
+
*/
|
|
96
|
+
readonly maxNumClusters: pulumi.Output<number | undefined>;
|
|
97
|
+
/**
|
|
98
|
+
* Minimum number of clusters available when a SQL endpoint is running. The default is `1`.
|
|
99
|
+
*/
|
|
100
|
+
readonly minNumClusters: pulumi.Output<number | undefined>;
|
|
101
|
+
/**
|
|
102
|
+
* Name of the Databricks SQL release channel. Possible values are: `CHANNEL_NAME_PREVIEW` and `CHANNEL_NAME_CURRENT`. Default is `CHANNEL_NAME_CURRENT`.
|
|
103
|
+
*/
|
|
104
|
+
readonly name: pulumi.Output<string>;
|
|
105
|
+
readonly numClusters: pulumi.Output<number | undefined>;
|
|
106
|
+
/**
|
|
107
|
+
* ODBC connection params: `odbc_params.hostname`, `odbc_params.path`, `odbc_params.protocol`, and `odbc_params.port`.
|
|
108
|
+
*/
|
|
109
|
+
readonly odbcParams: pulumi.Output<outputs.SqlEndpointOdbcParams>;
|
|
110
|
+
/**
|
|
111
|
+
* The spot policy to use for allocating instances to clusters: `COST_OPTIMIZED` or `RELIABILITY_OPTIMIZED`. This field is optional. Default is `COST_OPTIMIZED`.
|
|
112
|
+
*/
|
|
113
|
+
readonly spotInstancePolicy: pulumi.Output<string | undefined>;
|
|
114
|
+
readonly state: pulumi.Output<string>;
|
|
115
|
+
/**
|
|
116
|
+
* Databricks tags all endpoint resources with these tags.
|
|
117
|
+
*/
|
|
118
|
+
readonly tags: pulumi.Output<outputs.SqlEndpointTags | undefined>;
|
|
119
|
+
/**
|
|
120
|
+
* Create a SqlEndpoint resource with the given unique name, arguments, and options.
|
|
121
|
+
*
|
|
122
|
+
* @param name The _unique_ name of the resource.
|
|
123
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
124
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
125
|
+
*/
|
|
126
|
+
constructor(name: string, args: SqlEndpointArgs, opts?: pulumi.CustomResourceOptions);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Input properties used for looking up and filtering SqlEndpoint resources.
|
|
130
|
+
*/
|
|
131
|
+
export interface SqlEndpointState {
|
|
132
|
+
/**
|
|
133
|
+
* Time in minutes until an idle SQL endpoint terminates all clusters and stops. This field is optional. The default is 120, set to 0 to disable the auto stop.
|
|
134
|
+
*/
|
|
135
|
+
autoStopMins?: pulumi.Input<number>;
|
|
136
|
+
/**
|
|
137
|
+
* block, consisting of following fields:
|
|
138
|
+
*/
|
|
139
|
+
channel?: pulumi.Input<inputs.SqlEndpointChannel>;
|
|
140
|
+
/**
|
|
141
|
+
* The size of the clusters allocated to the endpoint: "2X-Small", "X-Small", "Small", "Medium", "Large", "X-Large", "2X-Large", "3X-Large", "4X-Large".
|
|
142
|
+
*/
|
|
143
|
+
clusterSize?: pulumi.Input<string>;
|
|
144
|
+
/**
|
|
145
|
+
* ID of the data source for this endpoint. This is used to bind an SQLA query to an endpoint.
|
|
146
|
+
*/
|
|
147
|
+
dataSourceId?: pulumi.Input<string>;
|
|
148
|
+
/**
|
|
149
|
+
* Whether to enable [Photon](https://databricks.com/product/delta-engine). This field is optional and is enabled by default.
|
|
150
|
+
*/
|
|
151
|
+
enablePhoton?: pulumi.Input<boolean>;
|
|
152
|
+
/**
|
|
153
|
+
* Whether this SQL endpoint is a Serverless endpoint. To use a Serverless SQL endpoint, you must enable Serverless SQL endpoints for the workspace.
|
|
154
|
+
*/
|
|
155
|
+
enableServerlessCompute?: pulumi.Input<boolean>;
|
|
156
|
+
id?: pulumi.Input<string>;
|
|
157
|
+
instanceProfileArn?: pulumi.Input<string>;
|
|
158
|
+
/**
|
|
159
|
+
* JDBC connection string.
|
|
160
|
+
*/
|
|
161
|
+
jdbcUrl?: pulumi.Input<string>;
|
|
162
|
+
/**
|
|
163
|
+
* Maximum number of clusters available when a SQL endpoint is running. This field is required. If multi-cluster load balancing is not enabled, this is default to `1`.
|
|
164
|
+
*/
|
|
165
|
+
maxNumClusters?: pulumi.Input<number>;
|
|
166
|
+
/**
|
|
167
|
+
* Minimum number of clusters available when a SQL endpoint is running. The default is `1`.
|
|
168
|
+
*/
|
|
169
|
+
minNumClusters?: pulumi.Input<number>;
|
|
170
|
+
/**
|
|
171
|
+
* Name of the Databricks SQL release channel. Possible values are: `CHANNEL_NAME_PREVIEW` and `CHANNEL_NAME_CURRENT`. Default is `CHANNEL_NAME_CURRENT`.
|
|
172
|
+
*/
|
|
173
|
+
name?: pulumi.Input<string>;
|
|
174
|
+
numClusters?: pulumi.Input<number>;
|
|
175
|
+
/**
|
|
176
|
+
* ODBC connection params: `odbc_params.hostname`, `odbc_params.path`, `odbc_params.protocol`, and `odbc_params.port`.
|
|
177
|
+
*/
|
|
178
|
+
odbcParams?: pulumi.Input<inputs.SqlEndpointOdbcParams>;
|
|
179
|
+
/**
|
|
180
|
+
* The spot policy to use for allocating instances to clusters: `COST_OPTIMIZED` or `RELIABILITY_OPTIMIZED`. This field is optional. Default is `COST_OPTIMIZED`.
|
|
181
|
+
*/
|
|
182
|
+
spotInstancePolicy?: pulumi.Input<string>;
|
|
183
|
+
state?: pulumi.Input<string>;
|
|
184
|
+
/**
|
|
185
|
+
* Databricks tags all endpoint resources with these tags.
|
|
186
|
+
*/
|
|
187
|
+
tags?: pulumi.Input<inputs.SqlEndpointTags>;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* The set of arguments for constructing a SqlEndpoint resource.
|
|
191
|
+
*/
|
|
192
|
+
export interface SqlEndpointArgs {
|
|
193
|
+
/**
|
|
194
|
+
* Time in minutes until an idle SQL endpoint terminates all clusters and stops. This field is optional. The default is 120, set to 0 to disable the auto stop.
|
|
195
|
+
*/
|
|
196
|
+
autoStopMins?: pulumi.Input<number>;
|
|
197
|
+
/**
|
|
198
|
+
* block, consisting of following fields:
|
|
199
|
+
*/
|
|
200
|
+
channel?: pulumi.Input<inputs.SqlEndpointChannel>;
|
|
201
|
+
/**
|
|
202
|
+
* The size of the clusters allocated to the endpoint: "2X-Small", "X-Small", "Small", "Medium", "Large", "X-Large", "2X-Large", "3X-Large", "4X-Large".
|
|
203
|
+
*/
|
|
204
|
+
clusterSize: pulumi.Input<string>;
|
|
205
|
+
/**
|
|
206
|
+
* ID of the data source for this endpoint. This is used to bind an SQLA query to an endpoint.
|
|
207
|
+
*/
|
|
208
|
+
dataSourceId?: pulumi.Input<string>;
|
|
209
|
+
/**
|
|
210
|
+
* Whether to enable [Photon](https://databricks.com/product/delta-engine). This field is optional and is enabled by default.
|
|
211
|
+
*/
|
|
212
|
+
enablePhoton?: pulumi.Input<boolean>;
|
|
213
|
+
/**
|
|
214
|
+
* Whether this SQL endpoint is a Serverless endpoint. To use a Serverless SQL endpoint, you must enable Serverless SQL endpoints for the workspace.
|
|
215
|
+
*/
|
|
216
|
+
enableServerlessCompute?: pulumi.Input<boolean>;
|
|
217
|
+
id?: pulumi.Input<string>;
|
|
218
|
+
instanceProfileArn?: pulumi.Input<string>;
|
|
219
|
+
/**
|
|
220
|
+
* JDBC connection string.
|
|
221
|
+
*/
|
|
222
|
+
jdbcUrl?: pulumi.Input<string>;
|
|
223
|
+
/**
|
|
224
|
+
* Maximum number of clusters available when a SQL endpoint is running. This field is required. If multi-cluster load balancing is not enabled, this is default to `1`.
|
|
225
|
+
*/
|
|
226
|
+
maxNumClusters?: pulumi.Input<number>;
|
|
227
|
+
/**
|
|
228
|
+
* Minimum number of clusters available when a SQL endpoint is running. The default is `1`.
|
|
229
|
+
*/
|
|
230
|
+
minNumClusters?: pulumi.Input<number>;
|
|
231
|
+
/**
|
|
232
|
+
* Name of the Databricks SQL release channel. Possible values are: `CHANNEL_NAME_PREVIEW` and `CHANNEL_NAME_CURRENT`. Default is `CHANNEL_NAME_CURRENT`.
|
|
233
|
+
*/
|
|
234
|
+
name?: pulumi.Input<string>;
|
|
235
|
+
numClusters?: pulumi.Input<number>;
|
|
236
|
+
/**
|
|
237
|
+
* ODBC connection params: `odbc_params.hostname`, `odbc_params.path`, `odbc_params.protocol`, and `odbc_params.port`.
|
|
238
|
+
*/
|
|
239
|
+
odbcParams?: pulumi.Input<inputs.SqlEndpointOdbcParams>;
|
|
240
|
+
/**
|
|
241
|
+
* The spot policy to use for allocating instances to clusters: `COST_OPTIMIZED` or `RELIABILITY_OPTIMIZED`. This field is optional. Default is `COST_OPTIMIZED`.
|
|
242
|
+
*/
|
|
243
|
+
spotInstancePolicy?: pulumi.Input<string>;
|
|
244
|
+
state?: pulumi.Input<string>;
|
|
245
|
+
/**
|
|
246
|
+
* Databricks tags all endpoint resources with these tags.
|
|
247
|
+
*/
|
|
248
|
+
tags?: pulumi.Input<inputs.SqlEndpointTags>;
|
|
249
|
+
}
|
package/sqlEndpoint.js
ADDED
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.SqlEndpoint = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("./utilities");
|
|
8
|
+
/**
|
|
9
|
+
* This resource is used to manage [Databricks SQL Endpoints](https://docs.databricks.com/sql/admin/sql-endpoints.html). To create [SQL endpoints](https://docs.databricks.com/sql/get-started/concepts.html) you must have `databricksSqlAccess` on your databricks.Group or databricks_user.
|
|
10
|
+
*
|
|
11
|
+
* ## Example Usage
|
|
12
|
+
*
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
15
|
+
* import * as databricks from "@pulumi/databricks";
|
|
16
|
+
*
|
|
17
|
+
* const me = pulumi.output(databricks.getCurrentUser());
|
|
18
|
+
* const thisSqlEndpoint = new databricks.SqlEndpoint("this", {
|
|
19
|
+
* clusterSize: "Small",
|
|
20
|
+
* maxNumClusters: 1,
|
|
21
|
+
* tags: {
|
|
22
|
+
* customTags: [{
|
|
23
|
+
* key: "City",
|
|
24
|
+
* value: "Amsterdam",
|
|
25
|
+
* }],
|
|
26
|
+
* },
|
|
27
|
+
* });
|
|
28
|
+
* ```
|
|
29
|
+
* ## Access Control
|
|
30
|
+
*
|
|
31
|
+
* * databricks.Permissions can control which groups or individual users can *Can Use* or *Can Manage* SQL endpoints.
|
|
32
|
+
* * `databricksSqlAccess` on databricks.Group or databricks_user.
|
|
33
|
+
*
|
|
34
|
+
* ## Related Resources
|
|
35
|
+
*
|
|
36
|
+
* The following resources are often used in the same context:
|
|
37
|
+
*
|
|
38
|
+
* * End to end workspace management guide.
|
|
39
|
+
* * databricks.InstanceProfile to manage AWS EC2 instance profiles that users can launch databricks.Cluster and access data, like databricks_mount.
|
|
40
|
+
* * databricks.SqlDashboard to manage Databricks SQL [Dashboards](https://docs.databricks.com/sql/user/dashboards/index.html).
|
|
41
|
+
* * databricks.SqlGlobalConfig to configure the security policy, databricks_instance_profile, and [data access properties](https://docs.databricks.com/sql/admin/data-access-configuration.html) for all databricks.SqlEndpoint of workspace.
|
|
42
|
+
* * databricks.SqlPermissions to manage data object access control lists in Databricks workspaces for things like tables, views, databases, and [more](https://docs.databricks.com/security/access-control/table-acls/object-privileges.html).
|
|
43
|
+
*
|
|
44
|
+
* ## Import
|
|
45
|
+
*
|
|
46
|
+
* You can import a `databricks_sql_endpoint` resource with ID like the followingbash
|
|
47
|
+
*
|
|
48
|
+
* ```sh
|
|
49
|
+
* $ pulumi import databricks:index/sqlEndpoint:SqlEndpoint this <endpoint-id>
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
class SqlEndpoint extends pulumi.CustomResource {
|
|
53
|
+
constructor(name, argsOrState, opts) {
|
|
54
|
+
let resourceInputs = {};
|
|
55
|
+
opts = opts || {};
|
|
56
|
+
if (opts.id) {
|
|
57
|
+
const state = argsOrState;
|
|
58
|
+
resourceInputs["autoStopMins"] = state ? state.autoStopMins : undefined;
|
|
59
|
+
resourceInputs["channel"] = state ? state.channel : undefined;
|
|
60
|
+
resourceInputs["clusterSize"] = state ? state.clusterSize : undefined;
|
|
61
|
+
resourceInputs["dataSourceId"] = state ? state.dataSourceId : undefined;
|
|
62
|
+
resourceInputs["enablePhoton"] = state ? state.enablePhoton : undefined;
|
|
63
|
+
resourceInputs["enableServerlessCompute"] = state ? state.enableServerlessCompute : undefined;
|
|
64
|
+
resourceInputs["id"] = state ? state.id : undefined;
|
|
65
|
+
resourceInputs["instanceProfileArn"] = state ? state.instanceProfileArn : undefined;
|
|
66
|
+
resourceInputs["jdbcUrl"] = state ? state.jdbcUrl : undefined;
|
|
67
|
+
resourceInputs["maxNumClusters"] = state ? state.maxNumClusters : undefined;
|
|
68
|
+
resourceInputs["minNumClusters"] = state ? state.minNumClusters : undefined;
|
|
69
|
+
resourceInputs["name"] = state ? state.name : undefined;
|
|
70
|
+
resourceInputs["numClusters"] = state ? state.numClusters : undefined;
|
|
71
|
+
resourceInputs["odbcParams"] = state ? state.odbcParams : undefined;
|
|
72
|
+
resourceInputs["spotInstancePolicy"] = state ? state.spotInstancePolicy : undefined;
|
|
73
|
+
resourceInputs["state"] = state ? state.state : undefined;
|
|
74
|
+
resourceInputs["tags"] = state ? state.tags : undefined;
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
const args = argsOrState;
|
|
78
|
+
if ((!args || args.clusterSize === undefined) && !opts.urn) {
|
|
79
|
+
throw new Error("Missing required property 'clusterSize'");
|
|
80
|
+
}
|
|
81
|
+
resourceInputs["autoStopMins"] = args ? args.autoStopMins : undefined;
|
|
82
|
+
resourceInputs["channel"] = args ? args.channel : undefined;
|
|
83
|
+
resourceInputs["clusterSize"] = args ? args.clusterSize : undefined;
|
|
84
|
+
resourceInputs["dataSourceId"] = args ? args.dataSourceId : undefined;
|
|
85
|
+
resourceInputs["enablePhoton"] = args ? args.enablePhoton : undefined;
|
|
86
|
+
resourceInputs["enableServerlessCompute"] = args ? args.enableServerlessCompute : undefined;
|
|
87
|
+
resourceInputs["id"] = args ? args.id : undefined;
|
|
88
|
+
resourceInputs["instanceProfileArn"] = args ? args.instanceProfileArn : undefined;
|
|
89
|
+
resourceInputs["jdbcUrl"] = args ? args.jdbcUrl : undefined;
|
|
90
|
+
resourceInputs["maxNumClusters"] = args ? args.maxNumClusters : undefined;
|
|
91
|
+
resourceInputs["minNumClusters"] = args ? args.minNumClusters : undefined;
|
|
92
|
+
resourceInputs["name"] = args ? args.name : undefined;
|
|
93
|
+
resourceInputs["numClusters"] = args ? args.numClusters : undefined;
|
|
94
|
+
resourceInputs["odbcParams"] = args ? args.odbcParams : undefined;
|
|
95
|
+
resourceInputs["spotInstancePolicy"] = args ? args.spotInstancePolicy : undefined;
|
|
96
|
+
resourceInputs["state"] = args ? args.state : undefined;
|
|
97
|
+
resourceInputs["tags"] = args ? args.tags : undefined;
|
|
98
|
+
}
|
|
99
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
100
|
+
super(SqlEndpoint.__pulumiType, name, resourceInputs, opts);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Get an existing SqlEndpoint resource's state with the given name, ID, and optional extra
|
|
104
|
+
* properties used to qualify the lookup.
|
|
105
|
+
*
|
|
106
|
+
* @param name The _unique_ name of the resulting resource.
|
|
107
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
108
|
+
* @param state Any extra arguments used during the lookup.
|
|
109
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
110
|
+
*/
|
|
111
|
+
static get(name, id, state, opts) {
|
|
112
|
+
return new SqlEndpoint(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Returns true if the given object is an instance of SqlEndpoint. This is designed to work even
|
|
116
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
117
|
+
*/
|
|
118
|
+
static isInstance(obj) {
|
|
119
|
+
if (obj === undefined || obj === null) {
|
|
120
|
+
return false;
|
|
121
|
+
}
|
|
122
|
+
return obj['__pulumiType'] === SqlEndpoint.__pulumiType;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
exports.SqlEndpoint = SqlEndpoint;
|
|
126
|
+
/** @internal */
|
|
127
|
+
SqlEndpoint.__pulumiType = 'databricks:index/sqlEndpoint:SqlEndpoint';
|
|
128
|
+
//# sourceMappingURL=sqlEndpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlEndpoint.js","sourceRoot":"","sources":["../sqlEndpoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* This resource configures the security policy, databricks_instance_profile, and [data access properties](https://docs.databricks.com/sql/admin/data-access-configuration.html) for all databricks.SqlEndpoint of workspace. *Please note that changing parameters of this resources will restart all running databricks_sql_endpoint.* To use this resource you need to be an administrator.
|
|
4
|
+
*
|
|
5
|
+
* ## Example Usage
|
|
6
|
+
* ### AWS example
|
|
7
|
+
*
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
10
|
+
* import * as databricks from "@pulumi/databricks";
|
|
11
|
+
*
|
|
12
|
+
* const _this = new databricks.SqlGlobalConfig("this", {
|
|
13
|
+
* securityPolicy: "DATA_ACCESS_CONTROL",
|
|
14
|
+
* instanceProfileArn: "arn:....",
|
|
15
|
+
* dataAccessConfig: {
|
|
16
|
+
* "spark.sql.session.timeZone": "UTC",
|
|
17
|
+
* },
|
|
18
|
+
* });
|
|
19
|
+
* ```
|
|
20
|
+
* ### Azure example
|
|
21
|
+
*
|
|
22
|
+
* For Azure you should use the `dataAccessConfig` to provide the service principal configuration. You can use the Databricks SQL Admin Console UI to help you generate the right configuration values.
|
|
23
|
+
*
|
|
24
|
+
* ```typescript
|
|
25
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
26
|
+
* import * as databricks from "@pulumi/databricks";
|
|
27
|
+
*
|
|
28
|
+
* const _this = new databricks.SqlGlobalConfig("this", {
|
|
29
|
+
* securityPolicy: "DATA_ACCESS_CONTROL",
|
|
30
|
+
* dataAccessConfig: {
|
|
31
|
+
* "spark.hadoop.fs.azure.account.auth.type": "OAuth",
|
|
32
|
+
* "spark.hadoop.fs.azure.account.oauth.provider.type": "org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider",
|
|
33
|
+
* "spark.hadoop.fs.azure.account.oauth2.client.id": _var.tenant_id,
|
|
34
|
+
* "spark.hadoop.fs.azure.account.oauth2.client.secret": `{{secrets/${local.secret_scope}/${local.secret_key}}}`,
|
|
35
|
+
* "spark.hadoop.fs.azure.account.oauth2.client.endpoint": `https://login.microsoftonline.com/${_var.tenant_id}/oauth2/token`,
|
|
36
|
+
* },
|
|
37
|
+
* sqlConfigParams: {
|
|
38
|
+
* ANSI_MODE: "true",
|
|
39
|
+
* },
|
|
40
|
+
* });
|
|
41
|
+
* ```
|
|
42
|
+
* ## Related Resources
|
|
43
|
+
*
|
|
44
|
+
* The following resources are often used in the same context:
|
|
45
|
+
*
|
|
46
|
+
* * End to end workspace management guide.
|
|
47
|
+
* * databricks.InstanceProfile to manage AWS EC2 instance profiles that users can launch databricks.Cluster and access data, like databricks_mount.
|
|
48
|
+
* * databricks.SqlDashboard to manage Databricks SQL [Dashboards](https://docs.databricks.com/sql/user/dashboards/index.html).
|
|
49
|
+
* * databricks.SqlEndpoint to manage Databricks SQL [Endpoints](https://docs.databricks.com/sql/admin/sql-endpoints.html).
|
|
50
|
+
* * databricks.SqlPermissions to manage data object access control lists in Databricks workspaces for things like tables, views, databases, and [more](https://docs.databricks.com/security/access-control/table-acls/object-privileges.html).
|
|
51
|
+
*
|
|
52
|
+
* ## Import
|
|
53
|
+
*
|
|
54
|
+
* You can import a `databricks_sql_global_config` resource with command like the following (you need to use `global` as ID)bash
|
|
55
|
+
*
|
|
56
|
+
* ```sh
|
|
57
|
+
* $ pulumi import databricks:index/sqlGlobalConfig:SqlGlobalConfig this global
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
export declare class SqlGlobalConfig extends pulumi.CustomResource {
|
|
61
|
+
/**
|
|
62
|
+
* Get an existing SqlGlobalConfig resource's state with the given name, ID, and optional extra
|
|
63
|
+
* properties used to qualify the lookup.
|
|
64
|
+
*
|
|
65
|
+
* @param name The _unique_ name of the resulting resource.
|
|
66
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
67
|
+
* @param state Any extra arguments used during the lookup.
|
|
68
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
69
|
+
*/
|
|
70
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SqlGlobalConfigState, opts?: pulumi.CustomResourceOptions): SqlGlobalConfig;
|
|
71
|
+
/**
|
|
72
|
+
* Returns true if the given object is an instance of SqlGlobalConfig. This is designed to work even
|
|
73
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
74
|
+
*/
|
|
75
|
+
static isInstance(obj: any): obj is SqlGlobalConfig;
|
|
76
|
+
/**
|
|
77
|
+
* - data access configuration for databricks_sql_endpoint, such as configuration for an external Hive metastore, Hadoop Filesystem configuration, etc. Please note that the list of supported configuration properties is limited, so refer to the [documentation](https://docs.databricks.com/sql/admin/data-access-configuration.html#supported-properties) for a full list. Apply will fail if you're specifying not permitted configuration.
|
|
78
|
+
*/
|
|
79
|
+
readonly dataAccessConfig: pulumi.Output<{
|
|
80
|
+
[key: string]: any;
|
|
81
|
+
} | undefined>;
|
|
82
|
+
readonly enableServerlessCompute: pulumi.Output<boolean | undefined>;
|
|
83
|
+
/**
|
|
84
|
+
* - databricks.InstanceProfile used to access storage from databricks_sql_endpoint. Please note that this parameter is only for AWS, and will generate an error if used on other clouds.
|
|
85
|
+
*/
|
|
86
|
+
readonly instanceProfileArn: pulumi.Output<string | undefined>;
|
|
87
|
+
/**
|
|
88
|
+
* - The policy for controlling access to datasets. Default value: `DATA_ACCESS_CONTROL`, consult documentation for list of possible values
|
|
89
|
+
*/
|
|
90
|
+
readonly securityPolicy: pulumi.Output<string | undefined>;
|
|
91
|
+
/**
|
|
92
|
+
* - SQL Configuration Parameters let you override the default behavior for all sessions with all endpoints.
|
|
93
|
+
*/
|
|
94
|
+
readonly sqlConfigParams: pulumi.Output<{
|
|
95
|
+
[key: string]: any;
|
|
96
|
+
} | undefined>;
|
|
97
|
+
/**
|
|
98
|
+
* Create a SqlGlobalConfig resource with the given unique name, arguments, and options.
|
|
99
|
+
*
|
|
100
|
+
* @param name The _unique_ name of the resource.
|
|
101
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
102
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
103
|
+
*/
|
|
104
|
+
constructor(name: string, args?: SqlGlobalConfigArgs, opts?: pulumi.CustomResourceOptions);
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Input properties used for looking up and filtering SqlGlobalConfig resources.
|
|
108
|
+
*/
|
|
109
|
+
export interface SqlGlobalConfigState {
|
|
110
|
+
/**
|
|
111
|
+
* - data access configuration for databricks_sql_endpoint, such as configuration for an external Hive metastore, Hadoop Filesystem configuration, etc. Please note that the list of supported configuration properties is limited, so refer to the [documentation](https://docs.databricks.com/sql/admin/data-access-configuration.html#supported-properties) for a full list. Apply will fail if you're specifying not permitted configuration.
|
|
112
|
+
*/
|
|
113
|
+
dataAccessConfig?: pulumi.Input<{
|
|
114
|
+
[key: string]: any;
|
|
115
|
+
}>;
|
|
116
|
+
enableServerlessCompute?: pulumi.Input<boolean>;
|
|
117
|
+
/**
|
|
118
|
+
* - databricks.InstanceProfile used to access storage from databricks_sql_endpoint. Please note that this parameter is only for AWS, and will generate an error if used on other clouds.
|
|
119
|
+
*/
|
|
120
|
+
instanceProfileArn?: pulumi.Input<string>;
|
|
121
|
+
/**
|
|
122
|
+
* - The policy for controlling access to datasets. Default value: `DATA_ACCESS_CONTROL`, consult documentation for list of possible values
|
|
123
|
+
*/
|
|
124
|
+
securityPolicy?: pulumi.Input<string>;
|
|
125
|
+
/**
|
|
126
|
+
* - SQL Configuration Parameters let you override the default behavior for all sessions with all endpoints.
|
|
127
|
+
*/
|
|
128
|
+
sqlConfigParams?: pulumi.Input<{
|
|
129
|
+
[key: string]: any;
|
|
130
|
+
}>;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* The set of arguments for constructing a SqlGlobalConfig resource.
|
|
134
|
+
*/
|
|
135
|
+
export interface SqlGlobalConfigArgs {
|
|
136
|
+
/**
|
|
137
|
+
* - data access configuration for databricks_sql_endpoint, such as configuration for an external Hive metastore, Hadoop Filesystem configuration, etc. Please note that the list of supported configuration properties is limited, so refer to the [documentation](https://docs.databricks.com/sql/admin/data-access-configuration.html#supported-properties) for a full list. Apply will fail if you're specifying not permitted configuration.
|
|
138
|
+
*/
|
|
139
|
+
dataAccessConfig?: pulumi.Input<{
|
|
140
|
+
[key: string]: any;
|
|
141
|
+
}>;
|
|
142
|
+
enableServerlessCompute?: pulumi.Input<boolean>;
|
|
143
|
+
/**
|
|
144
|
+
* - databricks.InstanceProfile used to access storage from databricks_sql_endpoint. Please note that this parameter is only for AWS, and will generate an error if used on other clouds.
|
|
145
|
+
*/
|
|
146
|
+
instanceProfileArn?: pulumi.Input<string>;
|
|
147
|
+
/**
|
|
148
|
+
* - The policy for controlling access to datasets. Default value: `DATA_ACCESS_CONTROL`, consult documentation for list of possible values
|
|
149
|
+
*/
|
|
150
|
+
securityPolicy?: pulumi.Input<string>;
|
|
151
|
+
/**
|
|
152
|
+
* - SQL Configuration Parameters let you override the default behavior for all sessions with all endpoints.
|
|
153
|
+
*/
|
|
154
|
+
sqlConfigParams?: pulumi.Input<{
|
|
155
|
+
[key: string]: any;
|
|
156
|
+
}>;
|
|
157
|
+
}
|