@pulumi/dbtcloud 0.1.0-alpha.1715944408

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 (166) hide show
  1. package/LICENSE +177 -0
  2. package/README.md +70 -0
  3. package/bigQueryConnection.d.ts +399 -0
  4. package/bigQueryConnection.js +196 -0
  5. package/bigQueryConnection.js.map +1 -0
  6. package/bigQueryCredential.d.ts +117 -0
  7. package/bigQueryCredential.js +91 -0
  8. package/bigQueryCredential.js.map +1 -0
  9. package/config/index.d.ts +1 -0
  10. package/config/index.js +21 -0
  11. package/config/index.js.map +1 -0
  12. package/config/vars.d.ts +14 -0
  13. package/config/vars.js +29 -0
  14. package/config/vars.js.map +1 -0
  15. package/connection.d.ts +321 -0
  16. package/connection.js +149 -0
  17. package/connection.js.map +1 -0
  18. package/databricksCredential.d.ts +168 -0
  19. package/databricksCredential.js +120 -0
  20. package/databricksCredential.js.map +1 -0
  21. package/environment.d.ts +209 -0
  22. package/environment.js +123 -0
  23. package/environment.js.map +1 -0
  24. package/environmentVariable.d.ts +120 -0
  25. package/environmentVariable.js +101 -0
  26. package/environmentVariable.js.map +1 -0
  27. package/environmentVariableJobOverride.d.ts +119 -0
  28. package/environmentVariableJobOverride.js +93 -0
  29. package/environmentVariableJobOverride.js.map +1 -0
  30. package/extendedAttributes.d.ts +135 -0
  31. package/extendedAttributes.js +107 -0
  32. package/extendedAttributes.js.map +1 -0
  33. package/fabricConnection.d.ts +177 -0
  34. package/fabricConnection.js +108 -0
  35. package/fabricConnection.js.map +1 -0
  36. package/fabricCredential.d.ts +167 -0
  37. package/fabricCredential.js +93 -0
  38. package/fabricCredential.js.map +1 -0
  39. package/getAzureDevOpsProject.d.ts +72 -0
  40. package/getAzureDevOpsProject.js +53 -0
  41. package/getAzureDevOpsProject.js.map +1 -0
  42. package/getAzureDevOpsRepository.d.ts +98 -0
  43. package/getAzureDevOpsRepository.js +56 -0
  44. package/getAzureDevOpsRepository.js.map +1 -0
  45. package/getBigQueryConnection.d.ts +134 -0
  46. package/getBigQueryConnection.js +20 -0
  47. package/getBigQueryConnection.js.map +1 -0
  48. package/getBigQueryCredential.d.ts +58 -0
  49. package/getBigQueryCredential.js +20 -0
  50. package/getBigQueryCredential.js.map +1 -0
  51. package/getConnection.d.ts +86 -0
  52. package/getConnection.js +20 -0
  53. package/getConnection.js.map +1 -0
  54. package/getDatabricksCredential.d.ts +66 -0
  55. package/getDatabricksCredential.js +20 -0
  56. package/getDatabricksCredential.js.map +1 -0
  57. package/getEnvironment.d.ts +82 -0
  58. package/getEnvironment.js +20 -0
  59. package/getEnvironment.js.map +1 -0
  60. package/getEnvironmentVariable.d.ts +52 -0
  61. package/getEnvironmentVariable.js +20 -0
  62. package/getEnvironmentVariable.js.map +1 -0
  63. package/getExtendedAttributes.d.ts +80 -0
  64. package/getExtendedAttributes.js +46 -0
  65. package/getExtendedAttributes.js.map +1 -0
  66. package/getGroup.d.ts +50 -0
  67. package/getGroup.js +19 -0
  68. package/getGroup.js.map +1 -0
  69. package/getGroupUsers.d.ts +67 -0
  70. package/getGroupUsers.js +47 -0
  71. package/getGroupUsers.js.map +1 -0
  72. package/getJob.d.ts +89 -0
  73. package/getJob.js +20 -0
  74. package/getJob.js.map +1 -0
  75. package/getNotification.d.ts +82 -0
  76. package/getNotification.js +43 -0
  77. package/getNotification.js.map +1 -0
  78. package/getPostgresCredential.d.ts +62 -0
  79. package/getPostgresCredential.js +20 -0
  80. package/getPostgresCredential.js.map +1 -0
  81. package/getPrivatelinkEndpoint.d.ts +98 -0
  82. package/getPrivatelinkEndpoint.js +61 -0
  83. package/getPrivatelinkEndpoint.js.map +1 -0
  84. package/getProject.d.ts +102 -0
  85. package/getProject.js +57 -0
  86. package/getProject.js.map +1 -0
  87. package/getRepository.d.ts +86 -0
  88. package/getRepository.js +21 -0
  89. package/getRepository.js.map +1 -0
  90. package/getServiceToken.d.ts +47 -0
  91. package/getServiceToken.js +19 -0
  92. package/getServiceToken.js.map +1 -0
  93. package/getSnowflakeCredential.d.ts +66 -0
  94. package/getSnowflakeCredential.js +20 -0
  95. package/getSnowflakeCredential.js.map +1 -0
  96. package/getUser.d.ts +58 -0
  97. package/getUser.js +43 -0
  98. package/getUser.js.map +1 -0
  99. package/getUserGroups.d.ts +62 -0
  100. package/getUserGroups.js +43 -0
  101. package/getUserGroups.js.map +1 -0
  102. package/getWebhook.d.ts +66 -0
  103. package/getWebhook.js +19 -0
  104. package/getWebhook.js.map +1 -0
  105. package/group.d.ts +127 -0
  106. package/group.js +95 -0
  107. package/group.js.map +1 -0
  108. package/index.d.ts +144 -0
  109. package/index.js +220 -0
  110. package/index.js.map +1 -0
  111. package/job.d.ts +443 -0
  112. package/job.js +228 -0
  113. package/job.js.map +1 -0
  114. package/licenseMap.d.ts +96 -0
  115. package/licenseMap.js +90 -0
  116. package/licenseMap.js.map +1 -0
  117. package/notification.d.ts +202 -0
  118. package/notification.js +126 -0
  119. package/notification.js.map +1 -0
  120. package/package.json +31 -0
  121. package/package.json.bak +31 -0
  122. package/postgresCredential.d.ts +171 -0
  123. package/postgresCredential.js +110 -0
  124. package/postgresCredential.js.map +1 -0
  125. package/project.d.ts +87 -0
  126. package/project.js +78 -0
  127. package/project.js.map +1 -0
  128. package/projectArtefacts.d.ts +99 -0
  129. package/projectArtefacts.js +83 -0
  130. package/projectArtefacts.js.map +1 -0
  131. package/projectConnection.d.ts +86 -0
  132. package/projectConnection.js +83 -0
  133. package/projectConnection.js.map +1 -0
  134. package/projectRepository.d.ts +86 -0
  135. package/projectRepository.js +83 -0
  136. package/projectRepository.js.map +1 -0
  137. package/provider.d.ts +50 -0
  138. package/provider.js +48 -0
  139. package/provider.js.map +1 -0
  140. package/repository.d.ts +204 -0
  141. package/repository.js +103 -0
  142. package/repository.js.map +1 -0
  143. package/serviceToken.d.ts +126 -0
  144. package/serviceToken.js +95 -0
  145. package/serviceToken.js.map +1 -0
  146. package/snowflakeCredential.d.ts +218 -0
  147. package/snowflakeCredential.js +120 -0
  148. package/snowflakeCredential.js.map +1 -0
  149. package/types/index.d.ts +3 -0
  150. package/types/index.js +11 -0
  151. package/types/index.js.map +1 -0
  152. package/types/input.d.ts +43 -0
  153. package/types/input.js +5 -0
  154. package/types/input.js.map +1 -0
  155. package/types/output.d.ts +74 -0
  156. package/types/output.js +5 -0
  157. package/types/output.js.map +1 -0
  158. package/userGroups.d.ts +105 -0
  159. package/userGroups.js +102 -0
  160. package/userGroups.js.map +1 -0
  161. package/utilities.d.ts +8 -0
  162. package/utilities.js +101 -0
  163. package/utilities.js.map +1 -0
  164. package/webhook.d.ts +175 -0
  165. package/webhook.js +110 -0
  166. package/webhook.js.map +1 -0
@@ -0,0 +1,321 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Create a Data Warehouse connection for your project in dbt Cloud. The connection will need to be linked to the dbt Cloud project via a `dbtcloud.ProjectConnection` resource.
4
+ *
5
+ * This resource can be used for Databricks, Postgres, Redshift, Snowflake and AlloyDB connections.
6
+ * For BigQuery, due to the list of fields being very different, you can use the `dbtcloud.BigQueryConnection` resource.
7
+ *
8
+ * ## Example Usage
9
+ *
10
+ * ```typescript
11
+ * import * as pulumi from "@pulumi/pulumi";
12
+ * import * as dbtcloud from "@pulumi/dbtcloud";
13
+ *
14
+ * // NOTE for customers using the LEGACY dbt_cloud provider:
15
+ * const databricks = new dbtcloud.Connection("databricks", {
16
+ * projectId: dbtProject.id,
17
+ * type: "adapter",
18
+ * name: "Databricks",
19
+ * database: "",
20
+ * hostName: "my-databricks-host.cloud.databricks.com",
21
+ * httpPath: "/my/path",
22
+ * catalog: "moo",
23
+ * });
24
+ * const redshift = new dbtcloud.Connection("redshift", {
25
+ * projectId: dbtProject.id,
26
+ * type: "redshift",
27
+ * name: "My Redshift Warehouse",
28
+ * database: "my-database",
29
+ * port: 5439,
30
+ * hostName: "my-redshift-hostname",
31
+ * });
32
+ * const snowflake = new dbtcloud.Connection("snowflake", {
33
+ * projectId: dbtProject.id,
34
+ * type: "snowflake",
35
+ * name: "My Snowflake warehouse",
36
+ * account: "my-snowflake-account",
37
+ * database: "MY_DATABASE",
38
+ * role: "MY_ROLE",
39
+ * warehouse: "MY_WAREHOUSE",
40
+ * });
41
+ * ```
42
+ *
43
+ * ## Import
44
+ *
45
+ * Import using a project ID and connection ID found in the URL or via the API.
46
+ *
47
+ * ```sh
48
+ * $ pulumi import dbtcloud:index/connection:Connection test_connection "project_id:connection_id"
49
+ * ```
50
+ *
51
+ * ```sh
52
+ * $ pulumi import dbtcloud:index/connection:Connection test_connection 12345:6789
53
+ * ```
54
+ */
55
+ export declare class Connection extends pulumi.CustomResource {
56
+ /**
57
+ * Get an existing Connection resource's state with the given name, ID, and optional extra
58
+ * properties used to qualify the lookup.
59
+ *
60
+ * @param name The _unique_ name of the resulting resource.
61
+ * @param id The _unique_ provider ID of the resource to lookup.
62
+ * @param state Any extra arguments used during the lookup.
63
+ * @param opts Optional settings to control the behavior of the CustomResource.
64
+ */
65
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ConnectionState, opts?: pulumi.CustomResourceOptions): Connection;
66
+ /**
67
+ * Returns true if the given object is an instance of Connection. This is designed to work even
68
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
69
+ */
70
+ static isInstance(obj: any): obj is Connection;
71
+ /**
72
+ * Account name for the connection
73
+ */
74
+ readonly account: pulumi.Output<string | undefined>;
75
+ /**
76
+ * Adapter id created for the Databricks connection
77
+ */
78
+ readonly adapterId: pulumi.Output<number>;
79
+ /**
80
+ * Whether or not the connection should allow client session keep alive
81
+ */
82
+ readonly allowKeepAlive: pulumi.Output<boolean | undefined>;
83
+ /**
84
+ * Whether or not the connection should allow SSO
85
+ */
86
+ readonly allowSso: pulumi.Output<boolean | undefined>;
87
+ /**
88
+ * Catalog name if Unity Catalog is enabled in your Databricks workspace
89
+ */
90
+ readonly catalog: pulumi.Output<string | undefined>;
91
+ /**
92
+ * Connection Identifier
93
+ */
94
+ readonly connectionId: pulumi.Output<number>;
95
+ /**
96
+ * Database name for the connection
97
+ */
98
+ readonly database: pulumi.Output<string>;
99
+ /**
100
+ * Host name for the connection, including Databricks cluster
101
+ */
102
+ readonly hostName: pulumi.Output<string | undefined>;
103
+ /**
104
+ * The HTTP path of the Databricks cluster or SQL warehouse
105
+ */
106
+ readonly httpPath: pulumi.Output<string | undefined>;
107
+ /**
108
+ * Whether the connection is active
109
+ */
110
+ readonly isActive: pulumi.Output<boolean | undefined>;
111
+ /**
112
+ * Connection name
113
+ */
114
+ readonly name: pulumi.Output<string>;
115
+ /**
116
+ * OAuth client identifier
117
+ */
118
+ readonly oauthClientId: pulumi.Output<string | undefined>;
119
+ /**
120
+ * OAuth client secret
121
+ */
122
+ readonly oauthClientSecret: pulumi.Output<string | undefined>;
123
+ /**
124
+ * Port number to connect via
125
+ */
126
+ readonly port: pulumi.Output<number | undefined>;
127
+ /**
128
+ * The ID of the PrivateLink connection. This ID can be found using the `privatelinkEndpoint` data source
129
+ */
130
+ readonly privateLinkEndpointId: pulumi.Output<string | undefined>;
131
+ /**
132
+ * Project ID to create the connection in
133
+ */
134
+ readonly projectId: pulumi.Output<number>;
135
+ /**
136
+ * Role name for the connection
137
+ */
138
+ readonly role: pulumi.Output<string | undefined>;
139
+ /**
140
+ * Whether or not tunneling should be enabled on your database connection
141
+ */
142
+ readonly tunnelEnabled: pulumi.Output<boolean | undefined>;
143
+ /**
144
+ * The type of connection
145
+ */
146
+ readonly type: pulumi.Output<string>;
147
+ /**
148
+ * Warehouse name for the connection
149
+ */
150
+ readonly warehouse: pulumi.Output<string | undefined>;
151
+ /**
152
+ * Create a Connection resource with the given unique name, arguments, and options.
153
+ *
154
+ * @param name The _unique_ name of the resource.
155
+ * @param args The arguments to use to populate this resource's properties.
156
+ * @param opts A bag of options that control this resource's behavior.
157
+ */
158
+ constructor(name: string, args: ConnectionArgs, opts?: pulumi.CustomResourceOptions);
159
+ }
160
+ /**
161
+ * Input properties used for looking up and filtering Connection resources.
162
+ */
163
+ export interface ConnectionState {
164
+ /**
165
+ * Account name for the connection
166
+ */
167
+ account?: pulumi.Input<string>;
168
+ /**
169
+ * Adapter id created for the Databricks connection
170
+ */
171
+ adapterId?: pulumi.Input<number>;
172
+ /**
173
+ * Whether or not the connection should allow client session keep alive
174
+ */
175
+ allowKeepAlive?: pulumi.Input<boolean>;
176
+ /**
177
+ * Whether or not the connection should allow SSO
178
+ */
179
+ allowSso?: pulumi.Input<boolean>;
180
+ /**
181
+ * Catalog name if Unity Catalog is enabled in your Databricks workspace
182
+ */
183
+ catalog?: pulumi.Input<string>;
184
+ /**
185
+ * Connection Identifier
186
+ */
187
+ connectionId?: pulumi.Input<number>;
188
+ /**
189
+ * Database name for the connection
190
+ */
191
+ database?: pulumi.Input<string>;
192
+ /**
193
+ * Host name for the connection, including Databricks cluster
194
+ */
195
+ hostName?: pulumi.Input<string>;
196
+ /**
197
+ * The HTTP path of the Databricks cluster or SQL warehouse
198
+ */
199
+ httpPath?: pulumi.Input<string>;
200
+ /**
201
+ * Whether the connection is active
202
+ */
203
+ isActive?: pulumi.Input<boolean>;
204
+ /**
205
+ * Connection name
206
+ */
207
+ name?: pulumi.Input<string>;
208
+ /**
209
+ * OAuth client identifier
210
+ */
211
+ oauthClientId?: pulumi.Input<string>;
212
+ /**
213
+ * OAuth client secret
214
+ */
215
+ oauthClientSecret?: pulumi.Input<string>;
216
+ /**
217
+ * Port number to connect via
218
+ */
219
+ port?: pulumi.Input<number>;
220
+ /**
221
+ * The ID of the PrivateLink connection. This ID can be found using the `privatelinkEndpoint` data source
222
+ */
223
+ privateLinkEndpointId?: pulumi.Input<string>;
224
+ /**
225
+ * Project ID to create the connection in
226
+ */
227
+ projectId?: pulumi.Input<number>;
228
+ /**
229
+ * Role name for the connection
230
+ */
231
+ role?: pulumi.Input<string>;
232
+ /**
233
+ * Whether or not tunneling should be enabled on your database connection
234
+ */
235
+ tunnelEnabled?: pulumi.Input<boolean>;
236
+ /**
237
+ * The type of connection
238
+ */
239
+ type?: pulumi.Input<string>;
240
+ /**
241
+ * Warehouse name for the connection
242
+ */
243
+ warehouse?: pulumi.Input<string>;
244
+ }
245
+ /**
246
+ * The set of arguments for constructing a Connection resource.
247
+ */
248
+ export interface ConnectionArgs {
249
+ /**
250
+ * Account name for the connection
251
+ */
252
+ account?: pulumi.Input<string>;
253
+ /**
254
+ * Whether or not the connection should allow client session keep alive
255
+ */
256
+ allowKeepAlive?: pulumi.Input<boolean>;
257
+ /**
258
+ * Whether or not the connection should allow SSO
259
+ */
260
+ allowSso?: pulumi.Input<boolean>;
261
+ /**
262
+ * Catalog name if Unity Catalog is enabled in your Databricks workspace
263
+ */
264
+ catalog?: pulumi.Input<string>;
265
+ /**
266
+ * Database name for the connection
267
+ */
268
+ database: pulumi.Input<string>;
269
+ /**
270
+ * Host name for the connection, including Databricks cluster
271
+ */
272
+ hostName?: pulumi.Input<string>;
273
+ /**
274
+ * The HTTP path of the Databricks cluster or SQL warehouse
275
+ */
276
+ httpPath?: pulumi.Input<string>;
277
+ /**
278
+ * Whether the connection is active
279
+ */
280
+ isActive?: pulumi.Input<boolean>;
281
+ /**
282
+ * Connection name
283
+ */
284
+ name?: pulumi.Input<string>;
285
+ /**
286
+ * OAuth client identifier
287
+ */
288
+ oauthClientId?: pulumi.Input<string>;
289
+ /**
290
+ * OAuth client secret
291
+ */
292
+ oauthClientSecret?: pulumi.Input<string>;
293
+ /**
294
+ * Port number to connect via
295
+ */
296
+ port?: pulumi.Input<number>;
297
+ /**
298
+ * The ID of the PrivateLink connection. This ID can be found using the `privatelinkEndpoint` data source
299
+ */
300
+ privateLinkEndpointId?: pulumi.Input<string>;
301
+ /**
302
+ * Project ID to create the connection in
303
+ */
304
+ projectId: pulumi.Input<number>;
305
+ /**
306
+ * Role name for the connection
307
+ */
308
+ role?: pulumi.Input<string>;
309
+ /**
310
+ * Whether or not tunneling should be enabled on your database connection
311
+ */
312
+ tunnelEnabled?: pulumi.Input<boolean>;
313
+ /**
314
+ * The type of connection
315
+ */
316
+ type: pulumi.Input<string>;
317
+ /**
318
+ * Warehouse name for the connection
319
+ */
320
+ warehouse?: pulumi.Input<string>;
321
+ }
package/connection.js ADDED
@@ -0,0 +1,149 @@
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.Connection = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * Create a Data Warehouse connection for your project in dbt Cloud. The connection will need to be linked to the dbt Cloud project via a `dbtcloud.ProjectConnection` resource.
10
+ *
11
+ * This resource can be used for Databricks, Postgres, Redshift, Snowflake and AlloyDB connections.
12
+ * For BigQuery, due to the list of fields being very different, you can use the `dbtcloud.BigQueryConnection` resource.
13
+ *
14
+ * ## Example Usage
15
+ *
16
+ * ```typescript
17
+ * import * as pulumi from "@pulumi/pulumi";
18
+ * import * as dbtcloud from "@pulumi/dbtcloud";
19
+ *
20
+ * // NOTE for customers using the LEGACY dbt_cloud provider:
21
+ * const databricks = new dbtcloud.Connection("databricks", {
22
+ * projectId: dbtProject.id,
23
+ * type: "adapter",
24
+ * name: "Databricks",
25
+ * database: "",
26
+ * hostName: "my-databricks-host.cloud.databricks.com",
27
+ * httpPath: "/my/path",
28
+ * catalog: "moo",
29
+ * });
30
+ * const redshift = new dbtcloud.Connection("redshift", {
31
+ * projectId: dbtProject.id,
32
+ * type: "redshift",
33
+ * name: "My Redshift Warehouse",
34
+ * database: "my-database",
35
+ * port: 5439,
36
+ * hostName: "my-redshift-hostname",
37
+ * });
38
+ * const snowflake = new dbtcloud.Connection("snowflake", {
39
+ * projectId: dbtProject.id,
40
+ * type: "snowflake",
41
+ * name: "My Snowflake warehouse",
42
+ * account: "my-snowflake-account",
43
+ * database: "MY_DATABASE",
44
+ * role: "MY_ROLE",
45
+ * warehouse: "MY_WAREHOUSE",
46
+ * });
47
+ * ```
48
+ *
49
+ * ## Import
50
+ *
51
+ * Import using a project ID and connection ID found in the URL or via the API.
52
+ *
53
+ * ```sh
54
+ * $ pulumi import dbtcloud:index/connection:Connection test_connection "project_id:connection_id"
55
+ * ```
56
+ *
57
+ * ```sh
58
+ * $ pulumi import dbtcloud:index/connection:Connection test_connection 12345:6789
59
+ * ```
60
+ */
61
+ class Connection extends pulumi.CustomResource {
62
+ /**
63
+ * Get an existing Connection resource's state with the given name, ID, and optional extra
64
+ * properties used to qualify the lookup.
65
+ *
66
+ * @param name The _unique_ name of the resulting resource.
67
+ * @param id The _unique_ provider ID of the resource to lookup.
68
+ * @param state Any extra arguments used during the lookup.
69
+ * @param opts Optional settings to control the behavior of the CustomResource.
70
+ */
71
+ static get(name, id, state, opts) {
72
+ return new Connection(name, state, Object.assign(Object.assign({}, opts), { id: id }));
73
+ }
74
+ /**
75
+ * Returns true if the given object is an instance of Connection. This is designed to work even
76
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
77
+ */
78
+ static isInstance(obj) {
79
+ if (obj === undefined || obj === null) {
80
+ return false;
81
+ }
82
+ return obj['__pulumiType'] === Connection.__pulumiType;
83
+ }
84
+ constructor(name, argsOrState, opts) {
85
+ let resourceInputs = {};
86
+ opts = opts || {};
87
+ if (opts.id) {
88
+ const state = argsOrState;
89
+ resourceInputs["account"] = state ? state.account : undefined;
90
+ resourceInputs["adapterId"] = state ? state.adapterId : undefined;
91
+ resourceInputs["allowKeepAlive"] = state ? state.allowKeepAlive : undefined;
92
+ resourceInputs["allowSso"] = state ? state.allowSso : undefined;
93
+ resourceInputs["catalog"] = state ? state.catalog : undefined;
94
+ resourceInputs["connectionId"] = state ? state.connectionId : undefined;
95
+ resourceInputs["database"] = state ? state.database : undefined;
96
+ resourceInputs["hostName"] = state ? state.hostName : undefined;
97
+ resourceInputs["httpPath"] = state ? state.httpPath : undefined;
98
+ resourceInputs["isActive"] = state ? state.isActive : undefined;
99
+ resourceInputs["name"] = state ? state.name : undefined;
100
+ resourceInputs["oauthClientId"] = state ? state.oauthClientId : undefined;
101
+ resourceInputs["oauthClientSecret"] = state ? state.oauthClientSecret : undefined;
102
+ resourceInputs["port"] = state ? state.port : undefined;
103
+ resourceInputs["privateLinkEndpointId"] = state ? state.privateLinkEndpointId : undefined;
104
+ resourceInputs["projectId"] = state ? state.projectId : undefined;
105
+ resourceInputs["role"] = state ? state.role : undefined;
106
+ resourceInputs["tunnelEnabled"] = state ? state.tunnelEnabled : undefined;
107
+ resourceInputs["type"] = state ? state.type : undefined;
108
+ resourceInputs["warehouse"] = state ? state.warehouse : undefined;
109
+ }
110
+ else {
111
+ const args = argsOrState;
112
+ if ((!args || args.database === undefined) && !opts.urn) {
113
+ throw new Error("Missing required property 'database'");
114
+ }
115
+ if ((!args || args.projectId === undefined) && !opts.urn) {
116
+ throw new Error("Missing required property 'projectId'");
117
+ }
118
+ if ((!args || args.type === undefined) && !opts.urn) {
119
+ throw new Error("Missing required property 'type'");
120
+ }
121
+ resourceInputs["account"] = args ? args.account : undefined;
122
+ resourceInputs["allowKeepAlive"] = args ? args.allowKeepAlive : undefined;
123
+ resourceInputs["allowSso"] = args ? args.allowSso : undefined;
124
+ resourceInputs["catalog"] = args ? args.catalog : undefined;
125
+ resourceInputs["database"] = args ? args.database : undefined;
126
+ resourceInputs["hostName"] = args ? args.hostName : undefined;
127
+ resourceInputs["httpPath"] = args ? args.httpPath : undefined;
128
+ resourceInputs["isActive"] = args ? args.isActive : undefined;
129
+ resourceInputs["name"] = args ? args.name : undefined;
130
+ resourceInputs["oauthClientId"] = args ? args.oauthClientId : undefined;
131
+ resourceInputs["oauthClientSecret"] = args ? args.oauthClientSecret : undefined;
132
+ resourceInputs["port"] = args ? args.port : undefined;
133
+ resourceInputs["privateLinkEndpointId"] = args ? args.privateLinkEndpointId : undefined;
134
+ resourceInputs["projectId"] = args ? args.projectId : undefined;
135
+ resourceInputs["role"] = args ? args.role : undefined;
136
+ resourceInputs["tunnelEnabled"] = args ? args.tunnelEnabled : undefined;
137
+ resourceInputs["type"] = args ? args.type : undefined;
138
+ resourceInputs["warehouse"] = args ? args.warehouse : undefined;
139
+ resourceInputs["adapterId"] = undefined /*out*/;
140
+ resourceInputs["connectionId"] = undefined /*out*/;
141
+ }
142
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
143
+ super(Connection.__pulumiType, name, resourceInputs, opts);
144
+ }
145
+ }
146
+ exports.Connection = Connection;
147
+ /** @internal */
148
+ Connection.__pulumiType = 'dbtcloud:index/connection:Connection';
149
+ //# sourceMappingURL=connection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../connection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,168 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * ## Example Usage
4
+ *
5
+ * ```typescript
6
+ * import * as pulumi from "@pulumi/pulumi";
7
+ * import * as dbtcloud from "@pulumi/dbtcloud";
8
+ *
9
+ * // NOTE for customers using the LEGACY dbt_cloud provider:
10
+ * // when using the Databricks adapter
11
+ * const myDatabricksCred = new dbtcloud.DatabricksCredential("my_databricks_cred", {
12
+ * projectId: dbtProject.id,
13
+ * adapterId: myDatabricksConnection.adapterId,
14
+ * targetName: "prod",
15
+ * token: "abcdefgh",
16
+ * schema: "my_schema",
17
+ * adapterType: "databricks",
18
+ * });
19
+ * // when using the Spark adapter
20
+ * const mySparkCred = new dbtcloud.DatabricksCredential("my_spark_cred", {
21
+ * projectId: dbtProject.id,
22
+ * adapterId: myDatabricksConnection.adapterId,
23
+ * targetName: "prod",
24
+ * token: "abcdefgh",
25
+ * schema: "my_schema",
26
+ * adapterType: "spark",
27
+ * });
28
+ * ```
29
+ *
30
+ * ## Import
31
+ *
32
+ * Import using a project ID and credential ID found in the URL or via the API.
33
+ *
34
+ * ```sh
35
+ * $ pulumi import dbtcloud:index/databricksCredential:DatabricksCredential my_databricks_credential "project_id:credential_id"
36
+ * ```
37
+ *
38
+ * ```sh
39
+ * $ pulumi import dbtcloud:index/databricksCredential:DatabricksCredential my_databricks_credential 12345:6789
40
+ * ```
41
+ */
42
+ export declare class DatabricksCredential extends pulumi.CustomResource {
43
+ /**
44
+ * Get an existing DatabricksCredential resource's state with the given name, ID, and optional extra
45
+ * properties used to qualify the lookup.
46
+ *
47
+ * @param name The _unique_ name of the resulting resource.
48
+ * @param id The _unique_ provider ID of the resource to lookup.
49
+ * @param state Any extra arguments used during the lookup.
50
+ * @param opts Optional settings to control the behavior of the CustomResource.
51
+ */
52
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DatabricksCredentialState, opts?: pulumi.CustomResourceOptions): DatabricksCredential;
53
+ /**
54
+ * Returns true if the given object is an instance of DatabricksCredential. This is designed to work even
55
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
56
+ */
57
+ static isInstance(obj: any): obj is DatabricksCredential;
58
+ /**
59
+ * Databricks adapter ID for the credential
60
+ */
61
+ readonly adapterId: pulumi.Output<number>;
62
+ /**
63
+ * The type of the adapter (databricks or spark)
64
+ */
65
+ readonly adapterType: pulumi.Output<string>;
66
+ /**
67
+ * The catalog where to create models (only for the databricks adapter)
68
+ */
69
+ readonly catalog: pulumi.Output<string | undefined>;
70
+ /**
71
+ * The system Databricks credential ID
72
+ */
73
+ readonly credentialId: pulumi.Output<number>;
74
+ /**
75
+ * Project ID to create the Databricks credential in
76
+ */
77
+ readonly projectId: pulumi.Output<number>;
78
+ /**
79
+ * The schema where to create models
80
+ */
81
+ readonly schema: pulumi.Output<string>;
82
+ /**
83
+ * Target name
84
+ */
85
+ readonly targetName: pulumi.Output<string | undefined>;
86
+ /**
87
+ * Token for Databricks user
88
+ */
89
+ readonly token: pulumi.Output<string>;
90
+ /**
91
+ * Create a DatabricksCredential resource with the given unique name, arguments, and options.
92
+ *
93
+ * @param name The _unique_ name of the resource.
94
+ * @param args The arguments to use to populate this resource's properties.
95
+ * @param opts A bag of options that control this resource's behavior.
96
+ */
97
+ constructor(name: string, args: DatabricksCredentialArgs, opts?: pulumi.CustomResourceOptions);
98
+ }
99
+ /**
100
+ * Input properties used for looking up and filtering DatabricksCredential resources.
101
+ */
102
+ export interface DatabricksCredentialState {
103
+ /**
104
+ * Databricks adapter ID for the credential
105
+ */
106
+ adapterId?: pulumi.Input<number>;
107
+ /**
108
+ * The type of the adapter (databricks or spark)
109
+ */
110
+ adapterType?: pulumi.Input<string>;
111
+ /**
112
+ * The catalog where to create models (only for the databricks adapter)
113
+ */
114
+ catalog?: pulumi.Input<string>;
115
+ /**
116
+ * The system Databricks credential ID
117
+ */
118
+ credentialId?: pulumi.Input<number>;
119
+ /**
120
+ * Project ID to create the Databricks credential in
121
+ */
122
+ projectId?: pulumi.Input<number>;
123
+ /**
124
+ * The schema where to create models
125
+ */
126
+ schema?: pulumi.Input<string>;
127
+ /**
128
+ * Target name
129
+ */
130
+ targetName?: pulumi.Input<string>;
131
+ /**
132
+ * Token for Databricks user
133
+ */
134
+ token?: pulumi.Input<string>;
135
+ }
136
+ /**
137
+ * The set of arguments for constructing a DatabricksCredential resource.
138
+ */
139
+ export interface DatabricksCredentialArgs {
140
+ /**
141
+ * Databricks adapter ID for the credential
142
+ */
143
+ adapterId: pulumi.Input<number>;
144
+ /**
145
+ * The type of the adapter (databricks or spark)
146
+ */
147
+ adapterType: pulumi.Input<string>;
148
+ /**
149
+ * The catalog where to create models (only for the databricks adapter)
150
+ */
151
+ catalog?: pulumi.Input<string>;
152
+ /**
153
+ * Project ID to create the Databricks credential in
154
+ */
155
+ projectId: pulumi.Input<number>;
156
+ /**
157
+ * The schema where to create models
158
+ */
159
+ schema: pulumi.Input<string>;
160
+ /**
161
+ * Target name
162
+ */
163
+ targetName?: pulumi.Input<string>;
164
+ /**
165
+ * Token for Databricks user
166
+ */
167
+ token: pulumi.Input<string>;
168
+ }