@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.
Files changed (261) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +303 -0
  3. package/awsS3Mount.d.ts +50 -0
  4. package/awsS3Mount.js +63 -0
  5. package/awsS3Mount.js.map +1 -0
  6. package/azureAdlsGen1Mount.d.ts +65 -0
  7. package/azureAdlsGen1Mount.js +85 -0
  8. package/azureAdlsGen1Mount.js.map +1 -0
  9. package/azureAdlsGen2Mount.d.ts +68 -0
  10. package/azureAdlsGen2Mount.js +93 -0
  11. package/azureAdlsGen2Mount.js.map +1 -0
  12. package/azureBlobMount.d.ts +62 -0
  13. package/azureBlobMount.js +83 -0
  14. package/azureBlobMount.js.map +1 -0
  15. package/catalog.d.ts +124 -0
  16. package/catalog.js +88 -0
  17. package/catalog.js.map +1 -0
  18. package/cluster.d.ts +332 -0
  19. package/cluster.js +121 -0
  20. package/cluster.js.map +1 -0
  21. package/clusterPolicy.d.ts +112 -0
  22. package/clusterPolicy.js +97 -0
  23. package/clusterPolicy.js.map +1 -0
  24. package/config/index.d.ts +1 -0
  25. package/config/index.js +21 -0
  26. package/config/index.js.map +1 -0
  27. package/config/vars.d.ts +20 -0
  28. package/config/vars.js +127 -0
  29. package/config/vars.js.map +1 -0
  30. package/dbfsFile.d.ts +91 -0
  31. package/dbfsFile.js +71 -0
  32. package/dbfsFile.js.map +1 -0
  33. package/directory.d.ts +72 -0
  34. package/directory.js +65 -0
  35. package/directory.js.map +1 -0
  36. package/externalLocation.d.ts +114 -0
  37. package/externalLocation.js +80 -0
  38. package/externalLocation.js.map +1 -0
  39. package/getAwsAssumeRolePolicy.d.ts +47 -0
  40. package/getAwsAssumeRolePolicy.js +24 -0
  41. package/getAwsAssumeRolePolicy.js.map +1 -0
  42. package/getAwsBucketPolicy.d.ts +59 -0
  43. package/getAwsBucketPolicy.js +36 -0
  44. package/getAwsBucketPolicy.js.map +1 -0
  45. package/getAwsCrossAccountPolicy.d.ts +59 -0
  46. package/getAwsCrossAccountPolicy.js +47 -0
  47. package/getAwsCrossAccountPolicy.js.map +1 -0
  48. package/getCatalogs.d.ts +54 -0
  49. package/getCatalogs.js +43 -0
  50. package/getCatalogs.js.map +1 -0
  51. package/getClusters.d.ts +69 -0
  52. package/getClusters.js +57 -0
  53. package/getClusters.js.map +1 -0
  54. package/getCurrentUser.d.ts +39 -0
  55. package/getCurrentUser.js +38 -0
  56. package/getCurrentUser.js.map +1 -0
  57. package/getDbfsFile.d.ts +69 -0
  58. package/getDbfsFile.js +44 -0
  59. package/getDbfsFile.js.map +1 -0
  60. package/getDbfsFilePaths.d.ts +68 -0
  61. package/getDbfsFilePaths.js +46 -0
  62. package/getDbfsFilePaths.js.map +1 -0
  63. package/getGroup.d.ts +166 -0
  64. package/getGroup.js +46 -0
  65. package/getGroup.js.map +1 -0
  66. package/getJobs.d.ts +47 -0
  67. package/getJobs.js +30 -0
  68. package/getJobs.js.map +1 -0
  69. package/getNodeType.d.ts +173 -0
  70. package/getNodeType.js +71 -0
  71. package/getNodeType.js.map +1 -0
  72. package/getNotebook.d.ts +93 -0
  73. package/getNotebook.js +39 -0
  74. package/getNotebook.js.map +1 -0
  75. package/getNotebookPaths.d.ts +58 -0
  76. package/getNotebookPaths.js +36 -0
  77. package/getNotebookPaths.js.map +1 -0
  78. package/getSchemas.d.ts +65 -0
  79. package/getSchemas.js +45 -0
  80. package/getSchemas.js.map +1 -0
  81. package/getSparkVersion.d.ts +150 -0
  82. package/getSparkVersion.js +70 -0
  83. package/getSparkVersion.js.map +1 -0
  84. package/getTables.d.ts +75 -0
  85. package/getTables.js +47 -0
  86. package/getTables.js.map +1 -0
  87. package/getUser.d.ts +78 -0
  88. package/getUser.js +39 -0
  89. package/getUser.js.map +1 -0
  90. package/getZones.d.ts +29 -0
  91. package/getZones.js +26 -0
  92. package/getZones.js.map +1 -0
  93. package/gitCredential.d.ts +48 -0
  94. package/gitCredential.js +64 -0
  95. package/gitCredential.js.map +1 -0
  96. package/globalInitScript.d.ts +99 -0
  97. package/globalInitScript.js +68 -0
  98. package/globalInitScript.js.map +1 -0
  99. package/grants.d.ts +58 -0
  100. package/grants.js +64 -0
  101. package/grants.js.map +1 -0
  102. package/group.d.ts +131 -0
  103. package/group.js +83 -0
  104. package/group.js.map +1 -0
  105. package/groupInstanceProfile.d.ts +96 -0
  106. package/groupInstanceProfile.js +93 -0
  107. package/groupInstanceProfile.js.map +1 -0
  108. package/index.d.ts +81 -0
  109. package/index.js +362 -0
  110. package/index.js.map +1 -0
  111. package/instancePool.d.ts +166 -0
  112. package/instancePool.js +93 -0
  113. package/instancePool.js.map +1 -0
  114. package/instanceProfile.d.ts +180 -0
  115. package/instanceProfile.js +161 -0
  116. package/instanceProfile.js.map +1 -0
  117. package/ipAccessList.d.ts +128 -0
  118. package/ipAccessList.js +108 -0
  119. package/ipAccessList.js.map +1 -0
  120. package/job.d.ts +228 -0
  121. package/job.js +102 -0
  122. package/job.js.map +1 -0
  123. package/library.d.ts +183 -0
  124. package/library.js +189 -0
  125. package/library.js.map +1 -0
  126. package/metastore.d.ts +102 -0
  127. package/metastore.js +75 -0
  128. package/metastore.js.map +1 -0
  129. package/metastoreAssignment.d.ts +94 -0
  130. package/metastoreAssignment.js +81 -0
  131. package/metastoreAssignment.js.map +1 -0
  132. package/metastoreDataAccess.d.ts +85 -0
  133. package/metastoreDataAccess.js +73 -0
  134. package/metastoreDataAccess.js.map +1 -0
  135. package/mlflowExperiment.d.ts +122 -0
  136. package/mlflowExperiment.js +99 -0
  137. package/mlflowExperiment.js.map +1 -0
  138. package/mlflowModel.d.ts +131 -0
  139. package/mlflowModel.js +107 -0
  140. package/mlflowModel.js.map +1 -0
  141. package/mlflowWebhook.d.ts +129 -0
  142. package/mlflowWebhook.js +100 -0
  143. package/mlflowWebhook.js.map +1 -0
  144. package/mount.d.ts +89 -0
  145. package/mount.js +76 -0
  146. package/mount.js.map +1 -0
  147. package/mwsCredentials.d.ts +137 -0
  148. package/mwsCredentials.js +115 -0
  149. package/mwsCredentials.js.map +1 -0
  150. package/mwsCustomerManagedKeys.d.ts +257 -0
  151. package/mwsCustomerManagedKeys.js +226 -0
  152. package/mwsCustomerManagedKeys.js.map +1 -0
  153. package/mwsLogDelivery.d.ts +219 -0
  154. package/mwsLogDelivery.js +144 -0
  155. package/mwsLogDelivery.js.map +1 -0
  156. package/mwsNetworks.d.ts +129 -0
  157. package/mwsNetworks.js +89 -0
  158. package/mwsNetworks.js.map +1 -0
  159. package/mwsPrivateAccessSettings.d.ts +137 -0
  160. package/mwsPrivateAccessSettings.js +74 -0
  161. package/mwsPrivateAccessSettings.js.map +1 -0
  162. package/mwsStorageConfigurations.d.ts +122 -0
  163. package/mwsStorageConfigurations.js +106 -0
  164. package/mwsStorageConfigurations.js.map +1 -0
  165. package/mwsVpcEndpoint.d.ts +122 -0
  166. package/mwsVpcEndpoint.js +79 -0
  167. package/mwsVpcEndpoint.js.map +1 -0
  168. package/mwsWorkspaces.d.ts +222 -0
  169. package/mwsWorkspaces.js +106 -0
  170. package/mwsWorkspaces.js.map +1 -0
  171. package/notebook.d.ts +128 -0
  172. package/notebook.js +77 -0
  173. package/notebook.js.map +1 -0
  174. package/oboToken.d.ts +98 -0
  175. package/oboToken.js +82 -0
  176. package/oboToken.js.map +1 -0
  177. package/package.json +28 -0
  178. package/package.json.bak +28 -0
  179. package/package.json.dev +28 -0
  180. package/permissions.d.ts +211 -0
  181. package/permissions.js +97 -0
  182. package/permissions.js.map +1 -0
  183. package/pipeline.d.ts +200 -0
  184. package/pipeline.js +134 -0
  185. package/pipeline.js.map +1 -0
  186. package/provider.d.ts +61 -0
  187. package/provider.js +64 -0
  188. package/provider.js.map +1 -0
  189. package/repo.d.ts +117 -0
  190. package/repo.js +71 -0
  191. package/repo.js.map +1 -0
  192. package/schema.d.ts +149 -0
  193. package/schema.js +106 -0
  194. package/schema.js.map +1 -0
  195. package/scripts/install-pulumi-plugin.js +21 -0
  196. package/secret.d.ts +115 -0
  197. package/secret.js +99 -0
  198. package/secret.js.map +1 -0
  199. package/secretAcl.d.ts +115 -0
  200. package/secretAcl.js +105 -0
  201. package/secretAcl.js.map +1 -0
  202. package/secretScope.d.ts +85 -0
  203. package/secretScope.js +64 -0
  204. package/secretScope.js.map +1 -0
  205. package/servicePrincipal.d.ts +142 -0
  206. package/servicePrincipal.js +83 -0
  207. package/servicePrincipal.js.map +1 -0
  208. package/sqlDashboard.d.ts +90 -0
  209. package/sqlDashboard.js +99 -0
  210. package/sqlDashboard.js.map +1 -0
  211. package/sqlEndpoint.d.ts +249 -0
  212. package/sqlEndpoint.js +128 -0
  213. package/sqlEndpoint.js.map +1 -0
  214. package/sqlGlobalConfig.d.ts +157 -0
  215. package/sqlGlobalConfig.js +115 -0
  216. package/sqlGlobalConfig.js.map +1 -0
  217. package/sqlPermissions.d.ts +191 -0
  218. package/sqlPermissions.js +139 -0
  219. package/sqlPermissions.js.map +1 -0
  220. package/sqlQuery.d.ts +131 -0
  221. package/sqlQuery.js +139 -0
  222. package/sqlQuery.js.map +1 -0
  223. package/sqlVisualization.d.ts +105 -0
  224. package/sqlVisualization.js +119 -0
  225. package/sqlVisualization.js.map +1 -0
  226. package/sqlWidget.d.ts +109 -0
  227. package/sqlWidget.js +114 -0
  228. package/sqlWidget.js.map +1 -0
  229. package/storageCredential.d.ts +122 -0
  230. package/storageCredential.js +118 -0
  231. package/storageCredential.js.map +1 -0
  232. package/table.d.ts +249 -0
  233. package/table.js +157 -0
  234. package/table.js.map +1 -0
  235. package/token.d.ts +102 -0
  236. package/token.js +84 -0
  237. package/token.js.map +1 -0
  238. package/types/index.d.ts +3 -0
  239. package/types/index.js +11 -0
  240. package/types/index.js.map +1 -0
  241. package/types/input.d.ts +1209 -0
  242. package/types/input.js +5 -0
  243. package/types/input.js.map +1 -0
  244. package/types/output.d.ts +1222 -0
  245. package/types/output.js +5 -0
  246. package/types/output.js.map +1 -0
  247. package/user.d.ts +149 -0
  248. package/user.js +91 -0
  249. package/user.js.map +1 -0
  250. package/userInstanceProfile.d.ts +93 -0
  251. package/userInstanceProfile.js +90 -0
  252. package/userInstanceProfile.js.map +1 -0
  253. package/userRole.d.ts +106 -0
  254. package/userRole.js +103 -0
  255. package/userRole.js.map +1 -0
  256. package/utilities.d.ts +4 -0
  257. package/utilities.js +57 -0
  258. package/utilities.js.map +1 -0
  259. package/workspaceConf.d.ts +76 -0
  260. package/workspaceConf.js +71 -0
  261. package/workspaceConf.js.map +1 -0
package/repo.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repo.js","sourceRoot":"","sources":["../repo.ts"],"names":[],"mappings":"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"}
package/schema.d.ts ADDED
@@ -0,0 +1,149 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * > **Private Preview** This feature is in [Private Preview](https://docs.databricks.com/release-notes/release-types.html). Contact your Databricks representative to request access.
4
+ *
5
+ * Within a metastore, Unity Catalog provides a 3-level namespace for organizing data: Catalogs, Databases (also called Schemas), and Tables / Views.
6
+ *
7
+ * A `databricks.Schema` is contained within databricks.Catalog and can contain tables & views.
8
+ *
9
+ * ## Example Usage
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as databricks from "@pulumi/databricks";
14
+ *
15
+ * const sandbox = new databricks.Catalog("sandbox", {
16
+ * metastoreId: databricks_metastore["this"].id,
17
+ * comment: "this catalog is managed by terraform",
18
+ * properties: {
19
+ * purpose: "testing",
20
+ * },
21
+ * });
22
+ * const things = new databricks.Schema("things", {
23
+ * catalogName: sandbox.id,
24
+ * comment: "this database is managed by terraform",
25
+ * properties: {
26
+ * kind: "various",
27
+ * },
28
+ * });
29
+ * ```
30
+ * ## Related Resources
31
+ *
32
+ * The following resources are used in the same context:
33
+ *
34
+ * * databricks.Table data to list tables within Unity Catalog.
35
+ * * databricks.Schema data to list schemas within Unity Catalog.
36
+ * * databricks.Catalog data to list catalogs within Unity Catalog.
37
+ *
38
+ * ## Import
39
+ *
40
+ * This resource can be imported by namebash
41
+ *
42
+ * ```sh
43
+ * $ pulumi import databricks:index/schema:Schema this <name>
44
+ * ```
45
+ */
46
+ export declare class Schema extends pulumi.CustomResource {
47
+ /**
48
+ * Get an existing Schema resource's state with the given name, ID, and optional extra
49
+ * properties used to qualify the lookup.
50
+ *
51
+ * @param name The _unique_ name of the resulting resource.
52
+ * @param id The _unique_ provider ID of the resource to lookup.
53
+ * @param state Any extra arguments used during the lookup.
54
+ * @param opts Optional settings to control the behavior of the CustomResource.
55
+ */
56
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SchemaState, opts?: pulumi.CustomResourceOptions): Schema;
57
+ /**
58
+ * Returns true if the given object is an instance of Schema. This is designed to work even
59
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
60
+ */
61
+ static isInstance(obj: any): obj is Schema;
62
+ /**
63
+ * Name of parent catalog
64
+ */
65
+ readonly catalogName: pulumi.Output<string>;
66
+ /**
67
+ * User-supplied free-form text.
68
+ */
69
+ readonly comment: pulumi.Output<string | undefined>;
70
+ readonly metastoreId: pulumi.Output<string>;
71
+ /**
72
+ * Name of Schema relative to parent catalog. Change forces creation of a new resource.
73
+ */
74
+ readonly name: pulumi.Output<string>;
75
+ /**
76
+ * Username/groupname of schema owner. Currently this field can only be changed after the resource is created.
77
+ */
78
+ readonly owner: pulumi.Output<string>;
79
+ /**
80
+ * Extensible Schema properties.
81
+ */
82
+ readonly properties: pulumi.Output<{
83
+ [key: string]: any;
84
+ } | undefined>;
85
+ /**
86
+ * Create a Schema resource with the given unique name, arguments, and options.
87
+ *
88
+ * @param name The _unique_ name of the resource.
89
+ * @param args The arguments to use to populate this resource's properties.
90
+ * @param opts A bag of options that control this resource's behavior.
91
+ */
92
+ constructor(name: string, args: SchemaArgs, opts?: pulumi.CustomResourceOptions);
93
+ }
94
+ /**
95
+ * Input properties used for looking up and filtering Schema resources.
96
+ */
97
+ export interface SchemaState {
98
+ /**
99
+ * Name of parent catalog
100
+ */
101
+ catalogName?: pulumi.Input<string>;
102
+ /**
103
+ * User-supplied free-form text.
104
+ */
105
+ comment?: pulumi.Input<string>;
106
+ metastoreId?: pulumi.Input<string>;
107
+ /**
108
+ * Name of Schema relative to parent catalog. Change forces creation of a new resource.
109
+ */
110
+ name?: pulumi.Input<string>;
111
+ /**
112
+ * Username/groupname of schema owner. Currently this field can only be changed after the resource is created.
113
+ */
114
+ owner?: pulumi.Input<string>;
115
+ /**
116
+ * Extensible Schema properties.
117
+ */
118
+ properties?: pulumi.Input<{
119
+ [key: string]: any;
120
+ }>;
121
+ }
122
+ /**
123
+ * The set of arguments for constructing a Schema resource.
124
+ */
125
+ export interface SchemaArgs {
126
+ /**
127
+ * Name of parent catalog
128
+ */
129
+ catalogName: pulumi.Input<string>;
130
+ /**
131
+ * User-supplied free-form text.
132
+ */
133
+ comment?: pulumi.Input<string>;
134
+ metastoreId?: pulumi.Input<string>;
135
+ /**
136
+ * Name of Schema relative to parent catalog. Change forces creation of a new resource.
137
+ */
138
+ name?: pulumi.Input<string>;
139
+ /**
140
+ * Username/groupname of schema owner. Currently this field can only be changed after the resource is created.
141
+ */
142
+ owner?: pulumi.Input<string>;
143
+ /**
144
+ * Extensible Schema properties.
145
+ */
146
+ properties?: pulumi.Input<{
147
+ [key: string]: any;
148
+ }>;
149
+ }
package/schema.js ADDED
@@ -0,0 +1,106 @@
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.Schema = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * > **Private Preview** This feature is in [Private Preview](https://docs.databricks.com/release-notes/release-types.html). Contact your Databricks representative to request access.
10
+ *
11
+ * Within a metastore, Unity Catalog provides a 3-level namespace for organizing data: Catalogs, Databases (also called Schemas), and Tables / Views.
12
+ *
13
+ * A `databricks.Schema` is contained within databricks.Catalog and can contain tables & views.
14
+ *
15
+ * ## Example Usage
16
+ *
17
+ * ```typescript
18
+ * import * as pulumi from "@pulumi/pulumi";
19
+ * import * as databricks from "@pulumi/databricks";
20
+ *
21
+ * const sandbox = new databricks.Catalog("sandbox", {
22
+ * metastoreId: databricks_metastore["this"].id,
23
+ * comment: "this catalog is managed by terraform",
24
+ * properties: {
25
+ * purpose: "testing",
26
+ * },
27
+ * });
28
+ * const things = new databricks.Schema("things", {
29
+ * catalogName: sandbox.id,
30
+ * comment: "this database is managed by terraform",
31
+ * properties: {
32
+ * kind: "various",
33
+ * },
34
+ * });
35
+ * ```
36
+ * ## Related Resources
37
+ *
38
+ * The following resources are used in the same context:
39
+ *
40
+ * * databricks.Table data to list tables within Unity Catalog.
41
+ * * databricks.Schema data to list schemas within Unity Catalog.
42
+ * * databricks.Catalog data to list catalogs within Unity Catalog.
43
+ *
44
+ * ## Import
45
+ *
46
+ * This resource can be imported by namebash
47
+ *
48
+ * ```sh
49
+ * $ pulumi import databricks:index/schema:Schema this <name>
50
+ * ```
51
+ */
52
+ class Schema extends pulumi.CustomResource {
53
+ constructor(name, argsOrState, opts) {
54
+ let resourceInputs = {};
55
+ opts = opts || {};
56
+ if (opts.id) {
57
+ const state = argsOrState;
58
+ resourceInputs["catalogName"] = state ? state.catalogName : undefined;
59
+ resourceInputs["comment"] = state ? state.comment : undefined;
60
+ resourceInputs["metastoreId"] = state ? state.metastoreId : undefined;
61
+ resourceInputs["name"] = state ? state.name : undefined;
62
+ resourceInputs["owner"] = state ? state.owner : undefined;
63
+ resourceInputs["properties"] = state ? state.properties : undefined;
64
+ }
65
+ else {
66
+ const args = argsOrState;
67
+ if ((!args || args.catalogName === undefined) && !opts.urn) {
68
+ throw new Error("Missing required property 'catalogName'");
69
+ }
70
+ resourceInputs["catalogName"] = args ? args.catalogName : undefined;
71
+ resourceInputs["comment"] = args ? args.comment : undefined;
72
+ resourceInputs["metastoreId"] = args ? args.metastoreId : undefined;
73
+ resourceInputs["name"] = args ? args.name : undefined;
74
+ resourceInputs["owner"] = args ? args.owner : undefined;
75
+ resourceInputs["properties"] = args ? args.properties : undefined;
76
+ }
77
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
78
+ super(Schema.__pulumiType, name, resourceInputs, opts);
79
+ }
80
+ /**
81
+ * Get an existing Schema resource's state with the given name, ID, and optional extra
82
+ * properties used to qualify the lookup.
83
+ *
84
+ * @param name The _unique_ name of the resulting resource.
85
+ * @param id The _unique_ provider ID of the resource to lookup.
86
+ * @param state Any extra arguments used during the lookup.
87
+ * @param opts Optional settings to control the behavior of the CustomResource.
88
+ */
89
+ static get(name, id, state, opts) {
90
+ return new Schema(name, state, Object.assign(Object.assign({}, opts), { id: id }));
91
+ }
92
+ /**
93
+ * Returns true if the given object is an instance of Schema. This is designed to work even
94
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
95
+ */
96
+ static isInstance(obj) {
97
+ if (obj === undefined || obj === null) {
98
+ return false;
99
+ }
100
+ return obj['__pulumiType'] === Schema.__pulumiType;
101
+ }
102
+ }
103
+ exports.Schema = Schema;
104
+ /** @internal */
105
+ Schema.__pulumiType = 'databricks:index/schema:Schema';
106
+ //# sourceMappingURL=schema.js.map
package/schema.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var childProcess = require("child_process");
3
+
4
+ var args = process.argv.slice(2);
5
+ var res = childProcess.spawnSync("pulumi", ["plugin", "install"].concat(args), {
6
+ stdio: ["ignore", "inherit", "inherit"]
7
+ });
8
+
9
+ if (res.error && res.error.code === "ENOENT") {
10
+ console.error("\nThere was an error installing the resource provider plugin. " +
11
+ "It looks like `pulumi` is not installed on your system. " +
12
+ "Please visit https://pulumi.com/ to install the Pulumi CLI.\n" +
13
+ "You may try manually installing the plugin by running " +
14
+ "`pulumi plugin install " + args.join(" ") + "`");
15
+ } else if (res.error || res.status !== 0) {
16
+ console.error("\nThere was an error installing the resource provider plugin. " +
17
+ "You may try to manually installing the plugin by running " +
18
+ "`pulumi plugin install " + args.join(" ") + "`");
19
+ }
20
+
21
+ process.exit(0);
package/secret.d.ts ADDED
@@ -0,0 +1,115 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * With this resource you can insert a secret under the provided scope with the given name. If a secret already exists with the same name, this command overwrites the existing secret’s value. The server encrypts the secret using the secret scope’s encryption settings before storing it. You must have WRITE or MANAGE permission on the secret scope. The secret key must consist of alphanumeric characters, dashes, underscores, and periods, and cannot exceed 128 characters. The maximum allowed secret value size is 128 KB. The maximum number of secrets in a given scope is 1000. You can read a secret value only from within a command on a cluster (for example, through a notebook); there is no API to read a secret value outside of a cluster. The permission applied is based on who is invoking the command and you must have at least READ permission. Please consult [Secrets User Guide](https://docs.databricks.com/security/secrets/index.html#secrets-user-guide) for more details.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * ```typescript
8
+ * import * as pulumi from "@pulumi/pulumi";
9
+ * import * as databricks from "@pulumi/databricks";
10
+ *
11
+ * const app = new databricks.SecretScope("app", {});
12
+ * const publishingApi = new databricks.Secret("publishingApi", {
13
+ * key: "publishing_api",
14
+ * stringValue: data.azurerm_key_vault_secret.example.value,
15
+ * scope: app.id,
16
+ * });
17
+ * ```
18
+ * ## Related Resources
19
+ *
20
+ * The following resources are often used in the same context:
21
+ *
22
+ * * End to end workspace management guide.
23
+ * * databricks.Notebook to manage [Databricks Notebooks](https://docs.databricks.com/notebooks/index.html).
24
+ * * databricks.Pipeline to deploy [Delta Live Tables](https://docs.databricks.com/data-engineering/delta-live-tables/index.html).
25
+ * * databricks.Repo to manage [Databricks Repos](https://docs.databricks.com/repos.html).
26
+ * * databricks.SecretAcl to manage access to [secrets](https://docs.databricks.com/security/secrets/index.html#secrets-user-guide) in Databricks workspace.
27
+ * * databricks.SecretScope to create [secret scopes](https://docs.databricks.com/security/secrets/index.html#secrets-user-guide) in Databricks workspace.
28
+ *
29
+ * ## Import
30
+ *
31
+ * The resource secret can be imported using `scopeName|||secretKey` combination. **This may change in future versions.** bash
32
+ *
33
+ * ```sh
34
+ * $ pulumi import databricks:index/secret:Secret app `scopeName|||secretKey`
35
+ * ```
36
+ */
37
+ export declare class Secret extends pulumi.CustomResource {
38
+ /**
39
+ * Get an existing Secret resource's state with the given name, ID, and optional extra
40
+ * properties used to qualify the lookup.
41
+ *
42
+ * @param name The _unique_ name of the resulting resource.
43
+ * @param id The _unique_ provider ID of the resource to lookup.
44
+ * @param state Any extra arguments used during the lookup.
45
+ * @param opts Optional settings to control the behavior of the CustomResource.
46
+ */
47
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SecretState, opts?: pulumi.CustomResourceOptions): Secret;
48
+ /**
49
+ * Returns true if the given object is an instance of Secret. This is designed to work even
50
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
51
+ */
52
+ static isInstance(obj: any): obj is Secret;
53
+ /**
54
+ * (String) key within secret scope. Must consist of alphanumeric characters, dashes, underscores, and periods, and may not exceed 128 characters.
55
+ */
56
+ readonly key: pulumi.Output<string>;
57
+ /**
58
+ * (Integer) time secret was updated
59
+ */
60
+ readonly lastUpdatedTimestamp: pulumi.Output<number>;
61
+ /**
62
+ * (String) name of databricks secret scope. Must consist of alphanumeric characters, dashes, underscores, and periods, and may not exceed 128 characters.
63
+ */
64
+ readonly scope: pulumi.Output<string>;
65
+ /**
66
+ * (String) super secret sensitive value.
67
+ */
68
+ readonly stringValue: pulumi.Output<string>;
69
+ /**
70
+ * Create a Secret resource with the given unique name, arguments, and options.
71
+ *
72
+ * @param name The _unique_ name of the resource.
73
+ * @param args The arguments to use to populate this resource's properties.
74
+ * @param opts A bag of options that control this resource's behavior.
75
+ */
76
+ constructor(name: string, args: SecretArgs, opts?: pulumi.CustomResourceOptions);
77
+ }
78
+ /**
79
+ * Input properties used for looking up and filtering Secret resources.
80
+ */
81
+ export interface SecretState {
82
+ /**
83
+ * (String) key within secret scope. Must consist of alphanumeric characters, dashes, underscores, and periods, and may not exceed 128 characters.
84
+ */
85
+ key?: pulumi.Input<string>;
86
+ /**
87
+ * (Integer) time secret was updated
88
+ */
89
+ lastUpdatedTimestamp?: pulumi.Input<number>;
90
+ /**
91
+ * (String) name of databricks secret scope. Must consist of alphanumeric characters, dashes, underscores, and periods, and may not exceed 128 characters.
92
+ */
93
+ scope?: pulumi.Input<string>;
94
+ /**
95
+ * (String) super secret sensitive value.
96
+ */
97
+ stringValue?: pulumi.Input<string>;
98
+ }
99
+ /**
100
+ * The set of arguments for constructing a Secret resource.
101
+ */
102
+ export interface SecretArgs {
103
+ /**
104
+ * (String) key within secret scope. Must consist of alphanumeric characters, dashes, underscores, and periods, and may not exceed 128 characters.
105
+ */
106
+ key: pulumi.Input<string>;
107
+ /**
108
+ * (String) name of databricks secret scope. Must consist of alphanumeric characters, dashes, underscores, and periods, and may not exceed 128 characters.
109
+ */
110
+ scope: pulumi.Input<string>;
111
+ /**
112
+ * (String) super secret sensitive value.
113
+ */
114
+ stringValue: pulumi.Input<string>;
115
+ }
package/secret.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.Secret = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * With this resource you can insert a secret under the provided scope with the given name. If a secret already exists with the same name, this command overwrites the existing secret’s value. The server encrypts the secret using the secret scope’s encryption settings before storing it. You must have WRITE or MANAGE permission on the secret scope. The secret key must consist of alphanumeric characters, dashes, underscores, and periods, and cannot exceed 128 characters. The maximum allowed secret value size is 128 KB. The maximum number of secrets in a given scope is 1000. You can read a secret value only from within a command on a cluster (for example, through a notebook); there is no API to read a secret value outside of a cluster. The permission applied is based on who is invoking the command and you must have at least READ permission. Please consult [Secrets User Guide](https://docs.databricks.com/security/secrets/index.html#secrets-user-guide) for more details.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as databricks from "@pulumi/databricks";
16
+ *
17
+ * const app = new databricks.SecretScope("app", {});
18
+ * const publishingApi = new databricks.Secret("publishingApi", {
19
+ * key: "publishing_api",
20
+ * stringValue: data.azurerm_key_vault_secret.example.value,
21
+ * scope: app.id,
22
+ * });
23
+ * ```
24
+ * ## Related Resources
25
+ *
26
+ * The following resources are often used in the same context:
27
+ *
28
+ * * End to end workspace management guide.
29
+ * * databricks.Notebook to manage [Databricks Notebooks](https://docs.databricks.com/notebooks/index.html).
30
+ * * databricks.Pipeline to deploy [Delta Live Tables](https://docs.databricks.com/data-engineering/delta-live-tables/index.html).
31
+ * * databricks.Repo to manage [Databricks Repos](https://docs.databricks.com/repos.html).
32
+ * * databricks.SecretAcl to manage access to [secrets](https://docs.databricks.com/security/secrets/index.html#secrets-user-guide) in Databricks workspace.
33
+ * * databricks.SecretScope to create [secret scopes](https://docs.databricks.com/security/secrets/index.html#secrets-user-guide) in Databricks workspace.
34
+ *
35
+ * ## Import
36
+ *
37
+ * The resource secret can be imported using `scopeName|||secretKey` combination. **This may change in future versions.** bash
38
+ *
39
+ * ```sh
40
+ * $ pulumi import databricks:index/secret:Secret app `scopeName|||secretKey`
41
+ * ```
42
+ */
43
+ class Secret extends pulumi.CustomResource {
44
+ constructor(name, argsOrState, opts) {
45
+ let resourceInputs = {};
46
+ opts = opts || {};
47
+ if (opts.id) {
48
+ const state = argsOrState;
49
+ resourceInputs["key"] = state ? state.key : undefined;
50
+ resourceInputs["lastUpdatedTimestamp"] = state ? state.lastUpdatedTimestamp : undefined;
51
+ resourceInputs["scope"] = state ? state.scope : undefined;
52
+ resourceInputs["stringValue"] = state ? state.stringValue : undefined;
53
+ }
54
+ else {
55
+ const args = argsOrState;
56
+ if ((!args || args.key === undefined) && !opts.urn) {
57
+ throw new Error("Missing required property 'key'");
58
+ }
59
+ if ((!args || args.scope === undefined) && !opts.urn) {
60
+ throw new Error("Missing required property 'scope'");
61
+ }
62
+ if ((!args || args.stringValue === undefined) && !opts.urn) {
63
+ throw new Error("Missing required property 'stringValue'");
64
+ }
65
+ resourceInputs["key"] = args ? args.key : undefined;
66
+ resourceInputs["scope"] = args ? args.scope : undefined;
67
+ resourceInputs["stringValue"] = args ? args.stringValue : undefined;
68
+ resourceInputs["lastUpdatedTimestamp"] = undefined /*out*/;
69
+ }
70
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
71
+ super(Secret.__pulumiType, name, resourceInputs, opts);
72
+ }
73
+ /**
74
+ * Get an existing Secret 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 Secret(name, state, Object.assign(Object.assign({}, opts), { id: id }));
84
+ }
85
+ /**
86
+ * Returns true if the given object is an instance of Secret. 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'] === Secret.__pulumiType;
94
+ }
95
+ }
96
+ exports.Secret = Secret;
97
+ /** @internal */
98
+ Secret.__pulumiType = 'databricks:index/secret:Secret';
99
+ //# sourceMappingURL=secret.js.map
package/secret.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.js","sourceRoot":"","sources":["../secret.ts"],"names":[],"mappings":"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"}
package/secretAcl.d.ts ADDED
@@ -0,0 +1,115 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Create or overwrite the ACL associated with the given principal (user or group) on the specified databricks_secret_scope. Please consult [Secrets User Guide](https://docs.databricks.com/security/secrets/index.html#secrets-user-guide) for more details.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * This way, data scientists can read the Publishing API key that is synchronized from example, Azure Key Vault.
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as databricks from "@pulumi/databricks";
12
+ *
13
+ * const ds = new databricks.Group("ds", {displayName: "data-scientists"});
14
+ * const app = new databricks.SecretScope("app", {});
15
+ * const mySecretAcl = new databricks.SecretAcl("mySecretAcl", {
16
+ * principal: ds.displayName,
17
+ * permission: "READ",
18
+ * scope: app.name,
19
+ * });
20
+ * const publishingApi = new databricks.Secret("publishingApi", {
21
+ * key: "publishing_api",
22
+ * stringValue: data.azurerm_key_vault_secret.example.value,
23
+ * scope: app.name,
24
+ * });
25
+ * ```
26
+ * ## Related Resources
27
+ *
28
+ * The following resources are often used in the same context:
29
+ *
30
+ * * End to end workspace management guide.
31
+ * * databricks.Notebook to manage [Databricks Notebooks](https://docs.databricks.com/notebooks/index.html).
32
+ * * databricks.Permissions to manage [access control](https://docs.databricks.com/security/access-control/index.html) in Databricks workspace.
33
+ * * databricks.Repo to manage [Databricks Repos](https://docs.databricks.com/repos.html).
34
+ * * databricks.Secret to manage [secrets](https://docs.databricks.com/security/secrets/index.html#secrets-user-guide) in Databricks workspace.
35
+ * * databricks.SecretScope to create [secret scopes](https://docs.databricks.com/security/secrets/index.html#secrets-user-guide) in Databricks workspace.
36
+ *
37
+ * ## Import
38
+ *
39
+ * The resource secret acl can be imported using `scopeName|||principalName` combination. bash
40
+ *
41
+ * ```sh
42
+ * $ pulumi import databricks:index/secretAcl:SecretAcl object `scopeName|||principalName`
43
+ * ```
44
+ */
45
+ export declare class SecretAcl extends pulumi.CustomResource {
46
+ /**
47
+ * Get an existing SecretAcl resource's state with the given name, ID, and optional extra
48
+ * properties used to qualify the lookup.
49
+ *
50
+ * @param name The _unique_ name of the resulting resource.
51
+ * @param id The _unique_ provider ID of the resource to lookup.
52
+ * @param state Any extra arguments used during the lookup.
53
+ * @param opts Optional settings to control the behavior of the CustomResource.
54
+ */
55
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SecretAclState, opts?: pulumi.CustomResourceOptions): SecretAcl;
56
+ /**
57
+ * Returns true if the given object is an instance of SecretAcl. This is designed to work even
58
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
59
+ */
60
+ static isInstance(obj: any): obj is SecretAcl;
61
+ /**
62
+ * `READ`, `WRITE` or `MANAGE`.
63
+ */
64
+ readonly permission: pulumi.Output<string>;
65
+ /**
66
+ * name of the principals. It can be `users` for all users or name or `displayName` of databricks_group
67
+ */
68
+ readonly principal: pulumi.Output<string>;
69
+ /**
70
+ * name of the scope
71
+ */
72
+ readonly scope: pulumi.Output<string>;
73
+ /**
74
+ * Create a SecretAcl resource with the given unique name, arguments, and options.
75
+ *
76
+ * @param name The _unique_ name of the resource.
77
+ * @param args The arguments to use to populate this resource's properties.
78
+ * @param opts A bag of options that control this resource's behavior.
79
+ */
80
+ constructor(name: string, args: SecretAclArgs, opts?: pulumi.CustomResourceOptions);
81
+ }
82
+ /**
83
+ * Input properties used for looking up and filtering SecretAcl resources.
84
+ */
85
+ export interface SecretAclState {
86
+ /**
87
+ * `READ`, `WRITE` or `MANAGE`.
88
+ */
89
+ permission?: pulumi.Input<string>;
90
+ /**
91
+ * name of the principals. It can be `users` for all users or name or `displayName` of databricks_group
92
+ */
93
+ principal?: pulumi.Input<string>;
94
+ /**
95
+ * name of the scope
96
+ */
97
+ scope?: pulumi.Input<string>;
98
+ }
99
+ /**
100
+ * The set of arguments for constructing a SecretAcl resource.
101
+ */
102
+ export interface SecretAclArgs {
103
+ /**
104
+ * `READ`, `WRITE` or `MANAGE`.
105
+ */
106
+ permission: pulumi.Input<string>;
107
+ /**
108
+ * name of the principals. It can be `users` for all users or name or `displayName` of databricks_group
109
+ */
110
+ principal: pulumi.Input<string>;
111
+ /**
112
+ * name of the scope
113
+ */
114
+ scope: pulumi.Input<string>;
115
+ }