@pulumi/databricks 1.35.0 → 1.36.0-alpha.1712399546
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/getAwsAssumeRolePolicy.d.ts +2 -2
- package/getAwsAssumeRolePolicy.js +2 -2
- package/getAwsCrossAccountPolicy.d.ts +2 -2
- package/getAwsCrossAccountPolicy.js +2 -2
- package/getAwsUnityCatalogPolicy.d.ts +2 -2
- package/getAwsUnityCatalogPolicy.js +2 -2
- package/getPipelines.d.ts +2 -2
- package/mwsNetworks.d.ts +29 -0
- package/mwsNetworks.js +29 -0
- package/mwsNetworks.js.map +1 -1
- package/package.json +1 -1
|
@@ -44,7 +44,7 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
44
44
|
*
|
|
45
45
|
* * Provisioning AWS Databricks E2 with a Hub & Spoke firewall for data exfiltration protection guide
|
|
46
46
|
* * databricks.getAwsBucketPolicy data to configure a simple access policy for AWS S3 buckets, so that Databricks can access data in it.
|
|
47
|
-
* * databricks.getAwsCrossAccountPolicy data to construct the necessary AWS cross-account policy for you, which is based on [official documentation](
|
|
47
|
+
* * databricks.getAwsCrossAccountPolicy data to construct the necessary AWS cross-account policy for you, which is based on [official documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default).
|
|
48
48
|
*/
|
|
49
49
|
export declare function getAwsAssumeRolePolicy(args: GetAwsAssumeRolePolicyArgs, opts?: pulumi.InvokeOptions): Promise<GetAwsAssumeRolePolicyResult>;
|
|
50
50
|
/**
|
|
@@ -122,7 +122,7 @@ export interface GetAwsAssumeRolePolicyResult {
|
|
|
122
122
|
*
|
|
123
123
|
* * Provisioning AWS Databricks E2 with a Hub & Spoke firewall for data exfiltration protection guide
|
|
124
124
|
* * databricks.getAwsBucketPolicy data to configure a simple access policy for AWS S3 buckets, so that Databricks can access data in it.
|
|
125
|
-
* * databricks.getAwsCrossAccountPolicy data to construct the necessary AWS cross-account policy for you, which is based on [official documentation](
|
|
125
|
+
* * databricks.getAwsCrossAccountPolicy data to construct the necessary AWS cross-account policy for you, which is based on [official documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default).
|
|
126
126
|
*/
|
|
127
127
|
export declare function getAwsAssumeRolePolicyOutput(args: GetAwsAssumeRolePolicyOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetAwsAssumeRolePolicyResult>;
|
|
128
128
|
/**
|
|
@@ -50,7 +50,7 @@ const utilities = require("./utilities");
|
|
|
50
50
|
*
|
|
51
51
|
* * Provisioning AWS Databricks E2 with a Hub & Spoke firewall for data exfiltration protection guide
|
|
52
52
|
* * databricks.getAwsBucketPolicy data to configure a simple access policy for AWS S3 buckets, so that Databricks can access data in it.
|
|
53
|
-
* * databricks.getAwsCrossAccountPolicy data to construct the necessary AWS cross-account policy for you, which is based on [official documentation](
|
|
53
|
+
* * databricks.getAwsCrossAccountPolicy data to construct the necessary AWS cross-account policy for you, which is based on [official documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default).
|
|
54
54
|
*/
|
|
55
55
|
function getAwsAssumeRolePolicy(args, opts) {
|
|
56
56
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
|
|
@@ -106,7 +106,7 @@ exports.getAwsAssumeRolePolicy = getAwsAssumeRolePolicy;
|
|
|
106
106
|
*
|
|
107
107
|
* * Provisioning AWS Databricks E2 with a Hub & Spoke firewall for data exfiltration protection guide
|
|
108
108
|
* * databricks.getAwsBucketPolicy data to configure a simple access policy for AWS S3 buckets, so that Databricks can access data in it.
|
|
109
|
-
* * databricks.getAwsCrossAccountPolicy data to construct the necessary AWS cross-account policy for you, which is based on [official documentation](
|
|
109
|
+
* * databricks.getAwsCrossAccountPolicy data to construct the necessary AWS cross-account policy for you, which is based on [official documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default).
|
|
110
110
|
*/
|
|
111
111
|
function getAwsAssumeRolePolicyOutput(args, opts) {
|
|
112
112
|
return pulumi.output(args).apply((a) => getAwsAssumeRolePolicy(a, opts));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as pulumi from "@pulumi/pulumi";
|
|
2
2
|
/**
|
|
3
|
-
* This data source constructs necessary AWS cross-account policy for you, which is based on [official documentation](
|
|
3
|
+
* This data source constructs necessary AWS cross-account policy for you, which is based on [official documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default).
|
|
4
4
|
*
|
|
5
5
|
* ## Example Usage
|
|
6
6
|
*
|
|
@@ -75,7 +75,7 @@ export interface GetAwsCrossAccountPolicyResult {
|
|
|
75
75
|
readonly vpcId?: string;
|
|
76
76
|
}
|
|
77
77
|
/**
|
|
78
|
-
* This data source constructs necessary AWS cross-account policy for you, which is based on [official documentation](
|
|
78
|
+
* This data source constructs necessary AWS cross-account policy for you, which is based on [official documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default).
|
|
79
79
|
*
|
|
80
80
|
* ## Example Usage
|
|
81
81
|
*
|
|
@@ -6,7 +6,7 @@ exports.getAwsCrossAccountPolicyOutput = exports.getAwsCrossAccountPolicy = void
|
|
|
6
6
|
const pulumi = require("@pulumi/pulumi");
|
|
7
7
|
const utilities = require("./utilities");
|
|
8
8
|
/**
|
|
9
|
-
* This data source constructs necessary AWS cross-account policy for you, which is based on [official documentation](
|
|
9
|
+
* This data source constructs necessary AWS cross-account policy for you, which is based on [official documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default).
|
|
10
10
|
*
|
|
11
11
|
* ## Example Usage
|
|
12
12
|
*
|
|
@@ -44,7 +44,7 @@ function getAwsCrossAccountPolicy(args, opts) {
|
|
|
44
44
|
}
|
|
45
45
|
exports.getAwsCrossAccountPolicy = getAwsCrossAccountPolicy;
|
|
46
46
|
/**
|
|
47
|
-
* This data source constructs necessary AWS cross-account policy for you, which is based on [official documentation](
|
|
47
|
+
* This data source constructs necessary AWS cross-account policy for you, which is based on [official documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default).
|
|
48
48
|
*
|
|
49
49
|
* ## Example Usage
|
|
50
50
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as pulumi from "@pulumi/pulumi";
|
|
2
2
|
/**
|
|
3
|
-
* > **Note** This resource has an evolving API, which may change in future versions of the provider. Please always consult [latest documentation](
|
|
3
|
+
* > **Note** This resource has an evolving API, which may change in future versions of the provider. Please always consult [latest documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default) in case of any questions.
|
|
4
4
|
*
|
|
5
5
|
* This data source constructs necessary AWS Unity Catalog policy for you, which is based on [official documentation](https://docs.databricks.com/data-governance/unity-catalog/get-started.html#configure-a-storage-bucket-and-iam-role-in-aws).
|
|
6
6
|
*
|
|
@@ -97,7 +97,7 @@ export interface GetAwsUnityCatalogPolicyResult {
|
|
|
97
97
|
readonly roleName: string;
|
|
98
98
|
}
|
|
99
99
|
/**
|
|
100
|
-
* > **Note** This resource has an evolving API, which may change in future versions of the provider. Please always consult [latest documentation](
|
|
100
|
+
* > **Note** This resource has an evolving API, which may change in future versions of the provider. Please always consult [latest documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default) in case of any questions.
|
|
101
101
|
*
|
|
102
102
|
* This data source constructs necessary AWS Unity Catalog policy for you, which is based on [official documentation](https://docs.databricks.com/data-governance/unity-catalog/get-started.html#configure-a-storage-bucket-and-iam-role-in-aws).
|
|
103
103
|
*
|
|
@@ -6,7 +6,7 @@ exports.getAwsUnityCatalogPolicyOutput = exports.getAwsUnityCatalogPolicy = void
|
|
|
6
6
|
const pulumi = require("@pulumi/pulumi");
|
|
7
7
|
const utilities = require("./utilities");
|
|
8
8
|
/**
|
|
9
|
-
* > **Note** This resource has an evolving API, which may change in future versions of the provider. Please always consult [latest documentation](
|
|
9
|
+
* > **Note** This resource has an evolving API, which may change in future versions of the provider. Please always consult [latest documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default) in case of any questions.
|
|
10
10
|
*
|
|
11
11
|
* This data source constructs necessary AWS Unity Catalog policy for you, which is based on [official documentation](https://docs.databricks.com/data-governance/unity-catalog/get-started.html#configure-a-storage-bucket-and-iam-role-in-aws).
|
|
12
12
|
*
|
|
@@ -74,7 +74,7 @@ function getAwsUnityCatalogPolicy(args, opts) {
|
|
|
74
74
|
}
|
|
75
75
|
exports.getAwsUnityCatalogPolicy = getAwsUnityCatalogPolicy;
|
|
76
76
|
/**
|
|
77
|
-
* > **Note** This resource has an evolving API, which may change in future versions of the provider. Please always consult [latest documentation](
|
|
77
|
+
* > **Note** This resource has an evolving API, which may change in future versions of the provider. Please always consult [latest documentation](https://docs.databricks.com/administration-guide/account-api/iam-role.html#language-Your%C2%A0VPC,%C2%A0default) in case of any questions.
|
|
78
78
|
*
|
|
79
79
|
* This data source constructs necessary AWS Unity Catalog policy for you, which is based on [official documentation](https://docs.databricks.com/data-governance/unity-catalog/get-started.html#configure-a-storage-bucket-and-iam-role-in-aws).
|
|
80
80
|
*
|
package/getPipelines.d.ts
CHANGED
|
@@ -66,7 +66,7 @@ export interface GetPipelinesArgs {
|
|
|
66
66
|
*/
|
|
67
67
|
ids?: string[];
|
|
68
68
|
/**
|
|
69
|
-
* Filter Delta Live Tables pipelines by name for a given search term.
|
|
69
|
+
* Filter Delta Live Tables pipelines by name for a given search term. `%` is the supported wildcard operator.
|
|
70
70
|
*/
|
|
71
71
|
pipelineName?: string;
|
|
72
72
|
}
|
|
@@ -151,7 +151,7 @@ export interface GetPipelinesOutputArgs {
|
|
|
151
151
|
*/
|
|
152
152
|
ids?: pulumi.Input<pulumi.Input<string>[]>;
|
|
153
153
|
/**
|
|
154
|
-
* Filter Delta Live Tables pipelines by name for a given search term.
|
|
154
|
+
* Filter Delta Live Tables pipelines by name for a given search term. `%` is the supported wildcard operator.
|
|
155
155
|
*/
|
|
156
156
|
pipelineName?: pulumi.Input<string>;
|
|
157
157
|
}
|
package/mwsNetworks.d.ts
CHANGED
|
@@ -46,6 +46,35 @@ import * as outputs from "./types/output";
|
|
|
46
46
|
* subnetIds = module.vpc.private_subnets
|
|
47
47
|
* vpcId = module.vpc.vpc_id
|
|
48
48
|
* }
|
|
49
|
+
*
|
|
50
|
+
* ### Creating a Databricks on GCP workspace
|
|
51
|
+
*
|
|
52
|
+
* In order to create a VPC [that leverages GCP Private Service Connect](https://docs.gcp.databricks.com/administration-guide/cloud-configurations/gcp/private-service-connect.html) you would need to add the `vpcEndpointId` Attributes from mwsVpcEndpoint resources into the databricks.MwsNetworks resource. For example:
|
|
53
|
+
*
|
|
54
|
+
* ## Modifying networks on running workspaces (AWS only)
|
|
55
|
+
*
|
|
56
|
+
* Due to specifics of platform APIs, changing any attribute of network configuration would cause `databricks.MwsNetworks` to be re-created - deleted & added again with special case for running workspaces. Once network configuration is attached to a running databricks_mws_workspaces, you cannot delete it and `pulumi up` would result in `INVALID_STATE: Unable to delete, Network is being used by active workspace X` error. In order to modify any attributes of a network, you have to perform three different `pulumi up` steps:
|
|
57
|
+
*
|
|
58
|
+
* 1. Create a new `databricks.MwsNetworks` resource.
|
|
59
|
+
* 2. Update the `databricks.MwsWorkspaces` to point to the new `networkId`.
|
|
60
|
+
* 3. Delete the old `databricks.MwsNetworks` resource.
|
|
61
|
+
*
|
|
62
|
+
* ## Related Resources
|
|
63
|
+
*
|
|
64
|
+
* The following resources are used in the same context:
|
|
65
|
+
*
|
|
66
|
+
* * Provisioning Databricks on AWS guide.
|
|
67
|
+
* * Provisioning Databricks on AWS with PrivateLink guide.
|
|
68
|
+
* * Provisioning AWS Databricks E2 with a Hub & Spoke firewall for data exfiltration protection guide.
|
|
69
|
+
* * Provisioning Databricks on GCP guide.
|
|
70
|
+
* * Provisioning Databricks workspaces on GCP with Private Service Connect guide.
|
|
71
|
+
* * databricks.MwsVpcEndpoint resources with Databricks such that they can be used as part of a databricks.MwsNetworks configuration.
|
|
72
|
+
* * databricks.MwsPrivateAccessSettings to create a Private Access Setting that can be used as part of a databricks.MwsWorkspaces resource to create a [Databricks Workspace that leverages AWS PrivateLink](https://docs.databricks.com/administration-guide/cloud-configurations/aws/privatelink.html) or [GCP Private Service Connect](https://docs.gcp.databricks.com/administration-guide/cloud-configurations/gcp/private-service-connect.html).
|
|
73
|
+
* * databricks.MwsWorkspaces to set up [workspaces in E2 architecture on AWS](https://docs.databricks.com/getting-started/overview.html#e2-architecture-1).
|
|
74
|
+
*
|
|
75
|
+
* ## Import
|
|
76
|
+
*
|
|
77
|
+
* -> **Note** Importing this resource is not currently supported.
|
|
49
78
|
*/
|
|
50
79
|
export declare class MwsNetworks extends pulumi.CustomResource {
|
|
51
80
|
/**
|
package/mwsNetworks.js
CHANGED
|
@@ -50,6 +50,35 @@ const utilities = require("./utilities");
|
|
|
50
50
|
* subnetIds = module.vpc.private_subnets
|
|
51
51
|
* vpcId = module.vpc.vpc_id
|
|
52
52
|
* }
|
|
53
|
+
*
|
|
54
|
+
* ### Creating a Databricks on GCP workspace
|
|
55
|
+
*
|
|
56
|
+
* In order to create a VPC [that leverages GCP Private Service Connect](https://docs.gcp.databricks.com/administration-guide/cloud-configurations/gcp/private-service-connect.html) you would need to add the `vpcEndpointId` Attributes from mwsVpcEndpoint resources into the databricks.MwsNetworks resource. For example:
|
|
57
|
+
*
|
|
58
|
+
* ## Modifying networks on running workspaces (AWS only)
|
|
59
|
+
*
|
|
60
|
+
* Due to specifics of platform APIs, changing any attribute of network configuration would cause `databricks.MwsNetworks` to be re-created - deleted & added again with special case for running workspaces. Once network configuration is attached to a running databricks_mws_workspaces, you cannot delete it and `pulumi up` would result in `INVALID_STATE: Unable to delete, Network is being used by active workspace X` error. In order to modify any attributes of a network, you have to perform three different `pulumi up` steps:
|
|
61
|
+
*
|
|
62
|
+
* 1. Create a new `databricks.MwsNetworks` resource.
|
|
63
|
+
* 2. Update the `databricks.MwsWorkspaces` to point to the new `networkId`.
|
|
64
|
+
* 3. Delete the old `databricks.MwsNetworks` resource.
|
|
65
|
+
*
|
|
66
|
+
* ## Related Resources
|
|
67
|
+
*
|
|
68
|
+
* The following resources are used in the same context:
|
|
69
|
+
*
|
|
70
|
+
* * Provisioning Databricks on AWS guide.
|
|
71
|
+
* * Provisioning Databricks on AWS with PrivateLink guide.
|
|
72
|
+
* * Provisioning AWS Databricks E2 with a Hub & Spoke firewall for data exfiltration protection guide.
|
|
73
|
+
* * Provisioning Databricks on GCP guide.
|
|
74
|
+
* * Provisioning Databricks workspaces on GCP with Private Service Connect guide.
|
|
75
|
+
* * databricks.MwsVpcEndpoint resources with Databricks such that they can be used as part of a databricks.MwsNetworks configuration.
|
|
76
|
+
* * databricks.MwsPrivateAccessSettings to create a Private Access Setting that can be used as part of a databricks.MwsWorkspaces resource to create a [Databricks Workspace that leverages AWS PrivateLink](https://docs.databricks.com/administration-guide/cloud-configurations/aws/privatelink.html) or [GCP Private Service Connect](https://docs.gcp.databricks.com/administration-guide/cloud-configurations/gcp/private-service-connect.html).
|
|
77
|
+
* * databricks.MwsWorkspaces to set up [workspaces in E2 architecture on AWS](https://docs.databricks.com/getting-started/overview.html#e2-architecture-1).
|
|
78
|
+
*
|
|
79
|
+
* ## Import
|
|
80
|
+
*
|
|
81
|
+
* -> **Note** Importing this resource is not currently supported.
|
|
53
82
|
*/
|
|
54
83
|
class MwsNetworks extends pulumi.CustomResource {
|
|
55
84
|
/**
|
package/mwsNetworks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mwsNetworks.js","sourceRoot":"","sources":["../mwsNetworks.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"mwsNetworks.js","sourceRoot":"","sources":["../mwsNetworks.ts"],"names":[],"mappings":"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"}
|