@pulumi/snowflake 0.2.1-alpha.1632763694

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 (255) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +83 -0
  3. package/accountGrant.d.ts +97 -0
  4. package/accountGrant.js +80 -0
  5. package/accountGrant.js.map +1 -0
  6. package/apiIntegration.d.ts +181 -0
  7. package/apiIntegration.js +102 -0
  8. package/apiIntegration.js.map +1 -0
  9. package/config/index.d.ts +1 -0
  10. package/config/index.js +17 -0
  11. package/config/index.js.map +1 -0
  12. package/config/vars.d.ts +19 -0
  13. package/config/vars.js +97 -0
  14. package/config/vars.js.map +1 -0
  15. package/database.d.ts +97 -0
  16. package/database.js +81 -0
  17. package/database.js.map +1 -0
  18. package/databaseGrant.d.ts +126 -0
  19. package/databaseGrant.js +92 -0
  20. package/databaseGrant.js.map +1 -0
  21. package/externalFunction.d.ts +260 -0
  22. package/externalFunction.js +134 -0
  23. package/externalFunction.js.map +1 -0
  24. package/externalTable.d.ts +233 -0
  25. package/externalTable.js +124 -0
  26. package/externalTable.js.map +1 -0
  27. package/externalTableGrant.d.ts +165 -0
  28. package/externalTableGrant.js +104 -0
  29. package/externalTableGrant.js.map +1 -0
  30. package/fileFormat.d.ts +490 -0
  31. package/fileFormat.js +152 -0
  32. package/fileFormat.js.map +1 -0
  33. package/fileFormatGrant.d.ts +149 -0
  34. package/fileFormatGrant.js +98 -0
  35. package/fileFormatGrant.js.map +1 -0
  36. package/function.d.ts +157 -0
  37. package/function.js +81 -0
  38. package/function.js.map +1 -0
  39. package/functionGrant.d.ts +201 -0
  40. package/functionGrant.js +119 -0
  41. package/functionGrant.js.map +1 -0
  42. package/getCurrentAccount.d.ts +38 -0
  43. package/getCurrentAccount.js +33 -0
  44. package/getCurrentAccount.js.map +1 -0
  45. package/getExternalFunctions.d.ts +50 -0
  46. package/getExternalFunctions.js +34 -0
  47. package/getExternalFunctions.js.map +1 -0
  48. package/getExternalTables.d.ts +50 -0
  49. package/getExternalTables.js +34 -0
  50. package/getExternalTables.js.map +1 -0
  51. package/getFileFormats.d.ts +50 -0
  52. package/getFileFormats.js +34 -0
  53. package/getFileFormats.js.map +1 -0
  54. package/getFunctions.d.ts +50 -0
  55. package/getFunctions.js +34 -0
  56. package/getFunctions.js.map +1 -0
  57. package/getMaskingPolicies.d.ts +50 -0
  58. package/getMaskingPolicies.js +34 -0
  59. package/getMaskingPolicies.js.map +1 -0
  60. package/getMaterializedViews.d.ts +50 -0
  61. package/getMaterializedViews.js +34 -0
  62. package/getMaterializedViews.js.map +1 -0
  63. package/getPipes.d.ts +50 -0
  64. package/getPipes.js +34 -0
  65. package/getPipes.js.map +1 -0
  66. package/getProcedures.d.ts +50 -0
  67. package/getProcedures.js +34 -0
  68. package/getProcedures.js.map +1 -0
  69. package/getResourceMonitors.d.ts +26 -0
  70. package/getResourceMonitors.js +28 -0
  71. package/getResourceMonitors.js.map +1 -0
  72. package/getRowAccessPolicies.d.ts +50 -0
  73. package/getRowAccessPolicies.js +34 -0
  74. package/getRowAccessPolicies.js.map +1 -0
  75. package/getSchemas.d.ts +41 -0
  76. package/getSchemas.js +32 -0
  77. package/getSchemas.js.map +1 -0
  78. package/getSequences.d.ts +50 -0
  79. package/getSequences.js +34 -0
  80. package/getSequences.js.map +1 -0
  81. package/getStages.d.ts +50 -0
  82. package/getStages.js +34 -0
  83. package/getStages.js.map +1 -0
  84. package/getStorageIntegrations.d.ts +26 -0
  85. package/getStorageIntegrations.js +28 -0
  86. package/getStorageIntegrations.js.map +1 -0
  87. package/getStreams.d.ts +50 -0
  88. package/getStreams.js +34 -0
  89. package/getStreams.js.map +1 -0
  90. package/getSystemGenerateScimAccessToken.d.ts +40 -0
  91. package/getSystemGenerateScimAccessToken.js +32 -0
  92. package/getSystemGenerateScimAccessToken.js.map +1 -0
  93. package/getSystemGetAwsSnsIamPolicy.d.ts +28 -0
  94. package/getSystemGetAwsSnsIamPolicy.js +20 -0
  95. package/getSystemGetAwsSnsIamPolicy.js.map +1 -0
  96. package/getSystemGetPrivateLinkConfig.d.ts +31 -0
  97. package/getSystemGetPrivateLinkConfig.js +18 -0
  98. package/getSystemGetPrivateLinkConfig.js.map +1 -0
  99. package/getSystemGetSnowflakePlatformInfo.d.ts +19 -0
  100. package/getSystemGetSnowflakePlatformInfo.js +18 -0
  101. package/getSystemGetSnowflakePlatformInfo.js.map +1 -0
  102. package/getTables.d.ts +50 -0
  103. package/getTables.js +34 -0
  104. package/getTables.js.map +1 -0
  105. package/getTasks.d.ts +50 -0
  106. package/getTasks.js +34 -0
  107. package/getTasks.js.map +1 -0
  108. package/getViews.d.ts +50 -0
  109. package/getViews.js +34 -0
  110. package/getViews.js.map +1 -0
  111. package/getWarehouses.d.ts +26 -0
  112. package/getWarehouses.js +28 -0
  113. package/getWarehouses.js.map +1 -0
  114. package/index.d.ts +79 -0
  115. package/index.js +324 -0
  116. package/index.js.map +1 -0
  117. package/integrationGrant.d.ts +110 -0
  118. package/integrationGrant.js +86 -0
  119. package/integrationGrant.js.map +1 -0
  120. package/managedAccount.d.ts +160 -0
  121. package/managedAccount.js +99 -0
  122. package/managedAccount.js.map +1 -0
  123. package/maskingPolicy.d.ts +144 -0
  124. package/maskingPolicy.js +102 -0
  125. package/maskingPolicy.js.map +1 -0
  126. package/maskingPolicyGrant.d.ts +108 -0
  127. package/maskingPolicyGrant.js +70 -0
  128. package/maskingPolicyGrant.js.map +1 -0
  129. package/materializedView.d.ts +158 -0
  130. package/materializedView.js +103 -0
  131. package/materializedView.js.map +1 -0
  132. package/materializedViewGrant.d.ts +165 -0
  133. package/materializedViewGrant.js +101 -0
  134. package/materializedViewGrant.js.map +1 -0
  135. package/networkPolicy.d.ts +104 -0
  136. package/networkPolicy.js +80 -0
  137. package/networkPolicy.js.map +1 -0
  138. package/networkPolicyAttachment.d.ts +110 -0
  139. package/networkPolicyAttachment.js +81 -0
  140. package/networkPolicyAttachment.js.map +1 -0
  141. package/notificationIntegration.d.ts +191 -0
  142. package/notificationIntegration.js +103 -0
  143. package/notificationIntegration.js.map +1 -0
  144. package/package.json +27 -0
  145. package/package.json.bak +26 -0
  146. package/package.json.dev +26 -0
  147. package/pipe.d.ts +187 -0
  148. package/pipe.js +107 -0
  149. package/pipe.js.map +1 -0
  150. package/pipeGrant.d.ts +149 -0
  151. package/pipeGrant.js +98 -0
  152. package/pipeGrant.js.map +1 -0
  153. package/procedure.d.ts +201 -0
  154. package/procedure.js +125 -0
  155. package/procedure.js.map +1 -0
  156. package/procedureGrant.d.ts +201 -0
  157. package/procedureGrant.js +119 -0
  158. package/procedureGrant.js.map +1 -0
  159. package/provider.d.ts +64 -0
  160. package/provider.js +70 -0
  161. package/provider.js.map +1 -0
  162. package/resourceMonitor.d.ts +156 -0
  163. package/resourceMonitor.js +89 -0
  164. package/resourceMonitor.js.map +1 -0
  165. package/resourceMonitorGrant.d.ts +105 -0
  166. package/resourceMonitorGrant.js +81 -0
  167. package/resourceMonitorGrant.js.map +1 -0
  168. package/role.d.ts +60 -0
  169. package/role.js +71 -0
  170. package/role.js.map +1 -0
  171. package/roleGrants.d.ts +105 -0
  172. package/roleGrants.js +91 -0
  173. package/roleGrants.js.map +1 -0
  174. package/rowAccessPolicy.d.ts +140 -0
  175. package/rowAccessPolicy.js +99 -0
  176. package/rowAccessPolicy.js.map +1 -0
  177. package/rowAccessPolicyGrant.d.ts +136 -0
  178. package/rowAccessPolicyGrant.js +98 -0
  179. package/rowAccessPolicyGrant.js.map +1 -0
  180. package/schema.d.ts +132 -0
  181. package/schema.js +88 -0
  182. package/schema.js.map +1 -0
  183. package/schemaGrant.d.ts +155 -0
  184. package/schemaGrant.js +98 -0
  185. package/schemaGrant.js.map +1 -0
  186. package/scimIntegration.d.ts +112 -0
  187. package/scimIntegration.js +85 -0
  188. package/scimIntegration.js.map +1 -0
  189. package/scripts/install-pulumi-plugin.js +21 -0
  190. package/sequence.d.ts +127 -0
  191. package/sequence.js +84 -0
  192. package/sequence.js.map +1 -0
  193. package/sequenceGrant.d.ts +149 -0
  194. package/sequenceGrant.js +98 -0
  195. package/sequenceGrant.js.map +1 -0
  196. package/share.d.ts +90 -0
  197. package/share.js +73 -0
  198. package/share.js.map +1 -0
  199. package/stage.d.ts +192 -0
  200. package/stage.js +109 -0
  201. package/stage.js.map +1 -0
  202. package/stageGrant.d.ts +165 -0
  203. package/stageGrant.js +104 -0
  204. package/stageGrant.js.map +1 -0
  205. package/storageIntegration.d.ts +153 -0
  206. package/storageIntegration.js +109 -0
  207. package/storageIntegration.js.map +1 -0
  208. package/stream.d.ts +166 -0
  209. package/stream.js +99 -0
  210. package/stream.js.map +1 -0
  211. package/streamGrant.d.ts +149 -0
  212. package/streamGrant.js +98 -0
  213. package/streamGrant.js.map +1 -0
  214. package/table.d.ts +214 -0
  215. package/table.js +139 -0
  216. package/table.js.map +1 -0
  217. package/tableGrant.d.ts +159 -0
  218. package/tableGrant.js +95 -0
  219. package/tableGrant.js.map +1 -0
  220. package/task.d.ts +218 -0
  221. package/task.js +117 -0
  222. package/task.js.map +1 -0
  223. package/taskGrant.d.ts +149 -0
  224. package/taskGrant.js +98 -0
  225. package/taskGrant.js.map +1 -0
  226. package/types/index.d.ts +3 -0
  227. package/types/index.js +11 -0
  228. package/types/index.js.map +1 -0
  229. package/types/input.d.ts +113 -0
  230. package/types/input.js +5 -0
  231. package/types/input.js.map +1 -0
  232. package/types/output.d.ts +331 -0
  233. package/types/output.js +5 -0
  234. package/types/output.js.map +1 -0
  235. package/user.d.ts +236 -0
  236. package/user.js +111 -0
  237. package/user.js.map +1 -0
  238. package/userPublicKeys.d.ts +72 -0
  239. package/userPublicKeys.js +55 -0
  240. package/userPublicKeys.js.map +1 -0
  241. package/utilities.d.ts +4 -0
  242. package/utilities.js +52 -0
  243. package/utilities.js.map +1 -0
  244. package/view.d.ts +145 -0
  245. package/view.js +97 -0
  246. package/view.js.map +1 -0
  247. package/viewGrant.d.ts +165 -0
  248. package/viewGrant.js +101 -0
  249. package/viewGrant.js.map +1 -0
  250. package/warehouse.d.ts +214 -0
  251. package/warehouse.js +96 -0
  252. package/warehouse.js.map +1 -0
  253. package/warehouseGrant.d.ts +107 -0
  254. package/warehouseGrant.js +83 -0
  255. package/warehouseGrant.js.map +1 -0
@@ -0,0 +1,140 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * ## Example Usage
4
+ *
5
+ * ```typescript
6
+ * import * as pulumi from "@pulumi/pulumi";
7
+ * import * as snowflake from "@pulumi/snowflake";
8
+ *
9
+ * const exampleRowAccessPolicy = new snowflake.RowAccessPolicy("example_row_access_policy", {
10
+ * database: "EXAMPLE_DB",
11
+ * rowAccessExpression: "case when current_role() in ('ANALYST') then true else false end",
12
+ * schema: "EXAMPLE_SCHEMA",
13
+ * signature: {
14
+ * A: "VARCHAR",
15
+ * B: "VARCHAR",
16
+ * },
17
+ * });
18
+ * ```
19
+ *
20
+ * ## Import
21
+ *
22
+ * # format is database name | schema name | policy name
23
+ *
24
+ * ```sh
25
+ * $ pulumi import snowflake:index/rowAccessPolicy:RowAccessPolicy example 'dbName|schemaName|policyName'
26
+ * ```
27
+ */
28
+ export declare class RowAccessPolicy extends pulumi.CustomResource {
29
+ /**
30
+ * Get an existing RowAccessPolicy resource's state with the given name, ID, and optional extra
31
+ * properties used to qualify the lookup.
32
+ *
33
+ * @param name The _unique_ name of the resulting resource.
34
+ * @param id The _unique_ provider ID of the resource to lookup.
35
+ * @param state Any extra arguments used during the lookup.
36
+ * @param opts Optional settings to control the behavior of the CustomResource.
37
+ */
38
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RowAccessPolicyState, opts?: pulumi.CustomResourceOptions): RowAccessPolicy;
39
+ /**
40
+ * Returns true if the given object is an instance of RowAccessPolicy. This is designed to work even
41
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
42
+ */
43
+ static isInstance(obj: any): obj is RowAccessPolicy;
44
+ /**
45
+ * Specifies a comment for the row access policy.
46
+ */
47
+ readonly comment: pulumi.Output<string | undefined>;
48
+ /**
49
+ * The database in which to create the row access policy.
50
+ */
51
+ readonly database: pulumi.Output<string>;
52
+ /**
53
+ * Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created.
54
+ */
55
+ readonly name: pulumi.Output<string>;
56
+ /**
57
+ * Specifies the SQL expression. The expression can be any boolean-valued SQL expression.
58
+ */
59
+ readonly rowAccessExpression: pulumi.Output<string>;
60
+ /**
61
+ * The schema in which to create the row access policy.
62
+ */
63
+ readonly schema: pulumi.Output<string>;
64
+ /**
65
+ * Specifies signature (arguments) for the row access policy (uppercase and sorted to avoid recreation of resource). A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy.
66
+ */
67
+ readonly signature: pulumi.Output<{
68
+ [key: string]: string;
69
+ }>;
70
+ /**
71
+ * Create a RowAccessPolicy resource with the given unique name, arguments, and options.
72
+ *
73
+ * @param name The _unique_ name of the resource.
74
+ * @param args The arguments to use to populate this resource's properties.
75
+ * @param opts A bag of options that control this resource's behavior.
76
+ */
77
+ constructor(name: string, args: RowAccessPolicyArgs, opts?: pulumi.CustomResourceOptions);
78
+ }
79
+ /**
80
+ * Input properties used for looking up and filtering RowAccessPolicy resources.
81
+ */
82
+ export interface RowAccessPolicyState {
83
+ /**
84
+ * Specifies a comment for the row access policy.
85
+ */
86
+ comment?: pulumi.Input<string>;
87
+ /**
88
+ * The database in which to create the row access policy.
89
+ */
90
+ database?: pulumi.Input<string>;
91
+ /**
92
+ * Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created.
93
+ */
94
+ name?: pulumi.Input<string>;
95
+ /**
96
+ * Specifies the SQL expression. The expression can be any boolean-valued SQL expression.
97
+ */
98
+ rowAccessExpression?: pulumi.Input<string>;
99
+ /**
100
+ * The schema in which to create the row access policy.
101
+ */
102
+ schema?: pulumi.Input<string>;
103
+ /**
104
+ * Specifies signature (arguments) for the row access policy (uppercase and sorted to avoid recreation of resource). A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy.
105
+ */
106
+ signature?: pulumi.Input<{
107
+ [key: string]: pulumi.Input<string>;
108
+ }>;
109
+ }
110
+ /**
111
+ * The set of arguments for constructing a RowAccessPolicy resource.
112
+ */
113
+ export interface RowAccessPolicyArgs {
114
+ /**
115
+ * Specifies a comment for the row access policy.
116
+ */
117
+ comment?: pulumi.Input<string>;
118
+ /**
119
+ * The database in which to create the row access policy.
120
+ */
121
+ database: pulumi.Input<string>;
122
+ /**
123
+ * Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created.
124
+ */
125
+ name?: pulumi.Input<string>;
126
+ /**
127
+ * Specifies the SQL expression. The expression can be any boolean-valued SQL expression.
128
+ */
129
+ rowAccessExpression: pulumi.Input<string>;
130
+ /**
131
+ * The schema in which to create the row access policy.
132
+ */
133
+ schema: pulumi.Input<string>;
134
+ /**
135
+ * Specifies signature (arguments) for the row access policy (uppercase and sorted to avoid recreation of resource). A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy.
136
+ */
137
+ signature: pulumi.Input<{
138
+ [key: string]: pulumi.Input<string>;
139
+ }>;
140
+ }
@@ -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.RowAccessPolicy = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * ## Example Usage
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as snowflake from "@pulumi/snowflake";
14
+ *
15
+ * const exampleRowAccessPolicy = new snowflake.RowAccessPolicy("example_row_access_policy", {
16
+ * database: "EXAMPLE_DB",
17
+ * rowAccessExpression: "case when current_role() in ('ANALYST') then true else false end",
18
+ * schema: "EXAMPLE_SCHEMA",
19
+ * signature: {
20
+ * A: "VARCHAR",
21
+ * B: "VARCHAR",
22
+ * },
23
+ * });
24
+ * ```
25
+ *
26
+ * ## Import
27
+ *
28
+ * # format is database name | schema name | policy name
29
+ *
30
+ * ```sh
31
+ * $ pulumi import snowflake:index/rowAccessPolicy:RowAccessPolicy example 'dbName|schemaName|policyName'
32
+ * ```
33
+ */
34
+ class RowAccessPolicy extends pulumi.CustomResource {
35
+ constructor(name, argsOrState, opts) {
36
+ let inputs = {};
37
+ opts = opts || {};
38
+ if (opts.id) {
39
+ const state = argsOrState;
40
+ inputs["comment"] = state ? state.comment : undefined;
41
+ inputs["database"] = state ? state.database : undefined;
42
+ inputs["name"] = state ? state.name : undefined;
43
+ inputs["rowAccessExpression"] = state ? state.rowAccessExpression : undefined;
44
+ inputs["schema"] = state ? state.schema : undefined;
45
+ inputs["signature"] = state ? state.signature : undefined;
46
+ }
47
+ else {
48
+ const args = argsOrState;
49
+ if ((!args || args.database === undefined) && !opts.urn) {
50
+ throw new Error("Missing required property 'database'");
51
+ }
52
+ if ((!args || args.rowAccessExpression === undefined) && !opts.urn) {
53
+ throw new Error("Missing required property 'rowAccessExpression'");
54
+ }
55
+ if ((!args || args.schema === undefined) && !opts.urn) {
56
+ throw new Error("Missing required property 'schema'");
57
+ }
58
+ if ((!args || args.signature === undefined) && !opts.urn) {
59
+ throw new Error("Missing required property 'signature'");
60
+ }
61
+ inputs["comment"] = args ? args.comment : undefined;
62
+ inputs["database"] = args ? args.database : undefined;
63
+ inputs["name"] = args ? args.name : undefined;
64
+ inputs["rowAccessExpression"] = args ? args.rowAccessExpression : undefined;
65
+ inputs["schema"] = args ? args.schema : undefined;
66
+ inputs["signature"] = args ? args.signature : undefined;
67
+ }
68
+ if (!opts.version) {
69
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
70
+ }
71
+ super(RowAccessPolicy.__pulumiType, name, inputs, opts);
72
+ }
73
+ /**
74
+ * Get an existing RowAccessPolicy 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 RowAccessPolicy(name, state, Object.assign(Object.assign({}, opts), { id: id }));
84
+ }
85
+ /**
86
+ * Returns true if the given object is an instance of RowAccessPolicy. 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'] === RowAccessPolicy.__pulumiType;
94
+ }
95
+ }
96
+ exports.RowAccessPolicy = RowAccessPolicy;
97
+ /** @internal */
98
+ RowAccessPolicy.__pulumiType = 'snowflake:index/rowAccessPolicy:RowAccessPolicy';
99
+ //# sourceMappingURL=rowAccessPolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rowAccessPolicy.js","sourceRoot":"","sources":["../rowAccessPolicy.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAa,eAAgB,SAAQ,MAAM,CAAC,cAAc;IA6DtD,YAAY,IAAY,EAAE,WAAwD,EAAE,IAAmC;QACnH,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA+C,CAAC;YAC9D,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,MAAM,CAAC,qBAAqB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9E,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YACpD,MAAM,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;SAC7D;aAAM;YACH,MAAM,IAAI,GAAG,WAA8C,CAAC;YAC5D,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACrD,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;aAC3D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;aACtE;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;aACzD;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACtD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;aAC5D;YACD,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACpD,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9C,MAAM,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5E,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAClD,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3D;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,EAAC,CAAC,CAAC;SACxE;QACD,KAAK,CAAC,eAAe,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IAhGD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA4B,EAAE,IAAmC;QAC1H,OAAO,IAAI,eAAe,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACtE,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,eAAe,CAAC,YAAY,CAAC;IAChE,CAAC;;AA1BL,0CAkGC;AApFG,gBAAgB;AACO,4BAAY,GAAG,iDAAiD,CAAC"}
@@ -0,0 +1,136 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * ## Example Usage
4
+ *
5
+ * ```typescript
6
+ * import * as pulumi from "@pulumi/pulumi";
7
+ * import * as snowflake from "@pulumi/snowflake";
8
+ *
9
+ * const grant = new snowflake.RowAccessPolicyGrant("grant", {
10
+ * databaseName: "db",
11
+ * privilege: "APPLY",
12
+ * roles: [
13
+ * "role1",
14
+ * "role2",
15
+ * ],
16
+ * rowAccessPolicyName: "row_access_policy",
17
+ * schemaName: "schema",
18
+ * withGrantOption: false,
19
+ * });
20
+ * ```
21
+ *
22
+ * ## Import
23
+ *
24
+ * # format is database name | schema name | row access policy name | privilege | true/false for with_grant_option
25
+ *
26
+ * ```sh
27
+ * $ pulumi import snowflake:index/rowAccessPolicyGrant:RowAccessPolicyGrant example 'dbName|schemaName|rowAccessPolicyName|SELECT|false'
28
+ * ```
29
+ */
30
+ export declare class RowAccessPolicyGrant extends pulumi.CustomResource {
31
+ /**
32
+ * Get an existing RowAccessPolicyGrant resource's state with the given name, ID, and optional extra
33
+ * properties used to qualify the lookup.
34
+ *
35
+ * @param name The _unique_ name of the resulting resource.
36
+ * @param id The _unique_ provider ID of the resource to lookup.
37
+ * @param state Any extra arguments used during the lookup.
38
+ * @param opts Optional settings to control the behavior of the CustomResource.
39
+ */
40
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RowAccessPolicyGrantState, opts?: pulumi.CustomResourceOptions): RowAccessPolicyGrant;
41
+ /**
42
+ * Returns true if the given object is an instance of RowAccessPolicyGrant. This is designed to work even
43
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
44
+ */
45
+ static isInstance(obj: any): obj is RowAccessPolicyGrant;
46
+ /**
47
+ * The name of the database containing the row access policy on which to grant privileges.
48
+ */
49
+ readonly databaseName: pulumi.Output<string>;
50
+ /**
51
+ * The privilege to grant on the row access policy.
52
+ */
53
+ readonly privilege: pulumi.Output<string | undefined>;
54
+ /**
55
+ * Grants privilege to these roles.
56
+ */
57
+ readonly roles: pulumi.Output<string[] | undefined>;
58
+ /**
59
+ * The name of the row access policy on which to grant privileges immediately.
60
+ */
61
+ readonly rowAccessPolicyName: pulumi.Output<string>;
62
+ /**
63
+ * The name of the schema containing the row access policy on which to grant privileges.
64
+ */
65
+ readonly schemaName: pulumi.Output<string>;
66
+ /**
67
+ * When this is set to true, allows the recipient role to grant the privileges to other roles.
68
+ */
69
+ readonly withGrantOption: pulumi.Output<boolean | undefined>;
70
+ /**
71
+ * Create a RowAccessPolicyGrant resource with the given unique name, arguments, and options.
72
+ *
73
+ * @param name The _unique_ name of the resource.
74
+ * @param args The arguments to use to populate this resource's properties.
75
+ * @param opts A bag of options that control this resource's behavior.
76
+ */
77
+ constructor(name: string, args: RowAccessPolicyGrantArgs, opts?: pulumi.CustomResourceOptions);
78
+ }
79
+ /**
80
+ * Input properties used for looking up and filtering RowAccessPolicyGrant resources.
81
+ */
82
+ export interface RowAccessPolicyGrantState {
83
+ /**
84
+ * The name of the database containing the row access policy on which to grant privileges.
85
+ */
86
+ databaseName?: pulumi.Input<string>;
87
+ /**
88
+ * The privilege to grant on the row access policy.
89
+ */
90
+ privilege?: pulumi.Input<string>;
91
+ /**
92
+ * Grants privilege to these roles.
93
+ */
94
+ roles?: pulumi.Input<pulumi.Input<string>[]>;
95
+ /**
96
+ * The name of the row access policy on which to grant privileges immediately.
97
+ */
98
+ rowAccessPolicyName?: pulumi.Input<string>;
99
+ /**
100
+ * The name of the schema containing the row access policy on which to grant privileges.
101
+ */
102
+ schemaName?: pulumi.Input<string>;
103
+ /**
104
+ * When this is set to true, allows the recipient role to grant the privileges to other roles.
105
+ */
106
+ withGrantOption?: pulumi.Input<boolean>;
107
+ }
108
+ /**
109
+ * The set of arguments for constructing a RowAccessPolicyGrant resource.
110
+ */
111
+ export interface RowAccessPolicyGrantArgs {
112
+ /**
113
+ * The name of the database containing the row access policy on which to grant privileges.
114
+ */
115
+ databaseName: pulumi.Input<string>;
116
+ /**
117
+ * The privilege to grant on the row access policy.
118
+ */
119
+ privilege?: pulumi.Input<string>;
120
+ /**
121
+ * Grants privilege to these roles.
122
+ */
123
+ roles?: pulumi.Input<pulumi.Input<string>[]>;
124
+ /**
125
+ * The name of the row access policy on which to grant privileges immediately.
126
+ */
127
+ rowAccessPolicyName: pulumi.Input<string>;
128
+ /**
129
+ * The name of the schema containing the row access policy on which to grant privileges.
130
+ */
131
+ schemaName: pulumi.Input<string>;
132
+ /**
133
+ * When this is set to true, allows the recipient role to grant the privileges to other roles.
134
+ */
135
+ withGrantOption?: pulumi.Input<boolean>;
136
+ }
@@ -0,0 +1,98 @@
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.RowAccessPolicyGrant = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * ## Example Usage
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as snowflake from "@pulumi/snowflake";
14
+ *
15
+ * const grant = new snowflake.RowAccessPolicyGrant("grant", {
16
+ * databaseName: "db",
17
+ * privilege: "APPLY",
18
+ * roles: [
19
+ * "role1",
20
+ * "role2",
21
+ * ],
22
+ * rowAccessPolicyName: "row_access_policy",
23
+ * schemaName: "schema",
24
+ * withGrantOption: false,
25
+ * });
26
+ * ```
27
+ *
28
+ * ## Import
29
+ *
30
+ * # format is database name | schema name | row access policy name | privilege | true/false for with_grant_option
31
+ *
32
+ * ```sh
33
+ * $ pulumi import snowflake:index/rowAccessPolicyGrant:RowAccessPolicyGrant example 'dbName|schemaName|rowAccessPolicyName|SELECT|false'
34
+ * ```
35
+ */
36
+ class RowAccessPolicyGrant extends pulumi.CustomResource {
37
+ constructor(name, argsOrState, opts) {
38
+ let inputs = {};
39
+ opts = opts || {};
40
+ if (opts.id) {
41
+ const state = argsOrState;
42
+ inputs["databaseName"] = state ? state.databaseName : undefined;
43
+ inputs["privilege"] = state ? state.privilege : undefined;
44
+ inputs["roles"] = state ? state.roles : undefined;
45
+ inputs["rowAccessPolicyName"] = state ? state.rowAccessPolicyName : undefined;
46
+ inputs["schemaName"] = state ? state.schemaName : undefined;
47
+ inputs["withGrantOption"] = state ? state.withGrantOption : undefined;
48
+ }
49
+ else {
50
+ const args = argsOrState;
51
+ if ((!args || args.databaseName === undefined) && !opts.urn) {
52
+ throw new Error("Missing required property 'databaseName'");
53
+ }
54
+ if ((!args || args.rowAccessPolicyName === undefined) && !opts.urn) {
55
+ throw new Error("Missing required property 'rowAccessPolicyName'");
56
+ }
57
+ if ((!args || args.schemaName === undefined) && !opts.urn) {
58
+ throw new Error("Missing required property 'schemaName'");
59
+ }
60
+ inputs["databaseName"] = args ? args.databaseName : undefined;
61
+ inputs["privilege"] = args ? args.privilege : undefined;
62
+ inputs["roles"] = args ? args.roles : undefined;
63
+ inputs["rowAccessPolicyName"] = args ? args.rowAccessPolicyName : undefined;
64
+ inputs["schemaName"] = args ? args.schemaName : undefined;
65
+ inputs["withGrantOption"] = args ? args.withGrantOption : undefined;
66
+ }
67
+ if (!opts.version) {
68
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
69
+ }
70
+ super(RowAccessPolicyGrant.__pulumiType, name, inputs, opts);
71
+ }
72
+ /**
73
+ * Get an existing RowAccessPolicyGrant resource's state with the given name, ID, and optional extra
74
+ * properties used to qualify the lookup.
75
+ *
76
+ * @param name The _unique_ name of the resulting resource.
77
+ * @param id The _unique_ provider ID of the resource to lookup.
78
+ * @param state Any extra arguments used during the lookup.
79
+ * @param opts Optional settings to control the behavior of the CustomResource.
80
+ */
81
+ static get(name, id, state, opts) {
82
+ return new RowAccessPolicyGrant(name, state, Object.assign(Object.assign({}, opts), { id: id }));
83
+ }
84
+ /**
85
+ * Returns true if the given object is an instance of RowAccessPolicyGrant. This is designed to work even
86
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
87
+ */
88
+ static isInstance(obj) {
89
+ if (obj === undefined || obj === null) {
90
+ return false;
91
+ }
92
+ return obj['__pulumiType'] === RowAccessPolicyGrant.__pulumiType;
93
+ }
94
+ }
95
+ exports.RowAccessPolicyGrant = RowAccessPolicyGrant;
96
+ /** @internal */
97
+ RowAccessPolicyGrant.__pulumiType = 'snowflake:index/rowAccessPolicyGrant:RowAccessPolicyGrant';
98
+ //# sourceMappingURL=rowAccessPolicyGrant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rowAccessPolicyGrant.js","sourceRoot":"","sources":["../rowAccessPolicyGrant.ts"],"names":[],"mappings":"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"}
package/schema.d.ts ADDED
@@ -0,0 +1,132 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * ## Example Usage
4
+ *
5
+ * ```typescript
6
+ * import * as pulumi from "@pulumi/pulumi";
7
+ * import * as snowflake from "@pulumi/snowflake";
8
+ *
9
+ * const schema = new snowflake.Schema("schema", {
10
+ * comment: "A schema.",
11
+ * dataRetentionDays: 1,
12
+ * database: "db",
13
+ * isManaged: false,
14
+ * isTransient: false,
15
+ * });
16
+ * ```
17
+ *
18
+ * ## Import
19
+ *
20
+ * # format is dbName | schemaName
21
+ *
22
+ * ```sh
23
+ * $ pulumi import snowflake:index/schema:Schema example 'dbName|schemaName'
24
+ * ```
25
+ */
26
+ export declare class Schema extends pulumi.CustomResource {
27
+ /**
28
+ * Get an existing Schema resource's state with the given name, ID, and optional extra
29
+ * properties used to qualify the lookup.
30
+ *
31
+ * @param name The _unique_ name of the resulting resource.
32
+ * @param id The _unique_ provider ID of the resource to lookup.
33
+ * @param state Any extra arguments used during the lookup.
34
+ * @param opts Optional settings to control the behavior of the CustomResource.
35
+ */
36
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SchemaState, opts?: pulumi.CustomResourceOptions): Schema;
37
+ /**
38
+ * Returns true if the given object is an instance of Schema. This is designed to work even
39
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
40
+ */
41
+ static isInstance(obj: any): obj is Schema;
42
+ /**
43
+ * Specifies a comment for the schema.
44
+ */
45
+ readonly comment: pulumi.Output<string | undefined>;
46
+ /**
47
+ * Specifies the number of days for which Time Travel actions (CLONE and UNDROP) can be performed on the schema, as well as specifying the default Time Travel retention time for all tables created in the schema.
48
+ */
49
+ readonly dataRetentionDays: pulumi.Output<number | undefined>;
50
+ /**
51
+ * The database in which to create the schema.
52
+ */
53
+ readonly database: pulumi.Output<string>;
54
+ /**
55
+ * Specifies a managed schema. Managed access schemas centralize privilege management with the schema owner.
56
+ */
57
+ readonly isManaged: pulumi.Output<boolean | undefined>;
58
+ /**
59
+ * Specifies a schema as transient. Transient schemas do not have a Fail-safe period so they do not incur additional storage costs once they leave Time Travel; however, this means they are also not protected by Fail-safe in the event of a data loss.
60
+ */
61
+ readonly isTransient: pulumi.Output<boolean | undefined>;
62
+ /**
63
+ * Specifies the identifier for the schema; must be unique for the database in which the schema is created.
64
+ */
65
+ readonly name: pulumi.Output<string>;
66
+ /**
67
+ * Create a Schema resource with the given unique name, arguments, and options.
68
+ *
69
+ * @param name The _unique_ name of the resource.
70
+ * @param args The arguments to use to populate this resource's properties.
71
+ * @param opts A bag of options that control this resource's behavior.
72
+ */
73
+ constructor(name: string, args: SchemaArgs, opts?: pulumi.CustomResourceOptions);
74
+ }
75
+ /**
76
+ * Input properties used for looking up and filtering Schema resources.
77
+ */
78
+ export interface SchemaState {
79
+ /**
80
+ * Specifies a comment for the schema.
81
+ */
82
+ comment?: pulumi.Input<string>;
83
+ /**
84
+ * Specifies the number of days for which Time Travel actions (CLONE and UNDROP) can be performed on the schema, as well as specifying the default Time Travel retention time for all tables created in the schema.
85
+ */
86
+ dataRetentionDays?: pulumi.Input<number>;
87
+ /**
88
+ * The database in which to create the schema.
89
+ */
90
+ database?: pulumi.Input<string>;
91
+ /**
92
+ * Specifies a managed schema. Managed access schemas centralize privilege management with the schema owner.
93
+ */
94
+ isManaged?: pulumi.Input<boolean>;
95
+ /**
96
+ * Specifies a schema as transient. Transient schemas do not have a Fail-safe period so they do not incur additional storage costs once they leave Time Travel; however, this means they are also not protected by Fail-safe in the event of a data loss.
97
+ */
98
+ isTransient?: pulumi.Input<boolean>;
99
+ /**
100
+ * Specifies the identifier for the schema; must be unique for the database in which the schema is created.
101
+ */
102
+ name?: pulumi.Input<string>;
103
+ }
104
+ /**
105
+ * The set of arguments for constructing a Schema resource.
106
+ */
107
+ export interface SchemaArgs {
108
+ /**
109
+ * Specifies a comment for the schema.
110
+ */
111
+ comment?: pulumi.Input<string>;
112
+ /**
113
+ * Specifies the number of days for which Time Travel actions (CLONE and UNDROP) can be performed on the schema, as well as specifying the default Time Travel retention time for all tables created in the schema.
114
+ */
115
+ dataRetentionDays?: pulumi.Input<number>;
116
+ /**
117
+ * The database in which to create the schema.
118
+ */
119
+ database: pulumi.Input<string>;
120
+ /**
121
+ * Specifies a managed schema. Managed access schemas centralize privilege management with the schema owner.
122
+ */
123
+ isManaged?: pulumi.Input<boolean>;
124
+ /**
125
+ * Specifies a schema as transient. Transient schemas do not have a Fail-safe period so they do not incur additional storage costs once they leave Time Travel; however, this means they are also not protected by Fail-safe in the event of a data loss.
126
+ */
127
+ isTransient?: pulumi.Input<boolean>;
128
+ /**
129
+ * Specifies the identifier for the schema; must be unique for the database in which the schema is created.
130
+ */
131
+ name?: pulumi.Input<string>;
132
+ }