@pulumi/snowflake 2.20.0-alpha.1786984938 → 2.20.0

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 (51) hide show
  1. package/accountAuthenticationPolicyAttachment.d.ts +55 -6
  2. package/accountAuthenticationPolicyAttachment.d.ts.map +1 -1
  3. package/accountAuthenticationPolicyAttachment.js +32 -3
  4. package/accountAuthenticationPolicyAttachment.js.map +1 -1
  5. package/accountSessionPolicyAttachment.d.ts +55 -6
  6. package/accountSessionPolicyAttachment.d.ts.map +1 -1
  7. package/accountSessionPolicyAttachment.js +32 -3
  8. package/accountSessionPolicyAttachment.js.map +1 -1
  9. package/apiIntegration.d.ts +1 -1
  10. package/apiIntegration.js +1 -1
  11. package/computePool.d.ts +18 -0
  12. package/computePool.d.ts.map +1 -1
  13. package/computePool.js +8 -0
  14. package/computePool.js.map +1 -1
  15. package/config/vars.d.ts +8 -4
  16. package/config/vars.d.ts.map +1 -1
  17. package/config/vars.js +6 -0
  18. package/config/vars.js.map +1 -1
  19. package/externalAccessIntegration.d.ts +205 -0
  20. package/externalAccessIntegration.d.ts.map +1 -0
  21. package/externalAccessIntegration.js +164 -0
  22. package/externalAccessIntegration.js.map +1 -0
  23. package/fileFormat.d.ts +1 -1
  24. package/fileFormat.js +1 -1
  25. package/getExternalAccessIntegrations.d.ts +62 -0
  26. package/getExternalAccessIntegrations.d.ts.map +1 -0
  27. package/getExternalAccessIntegrations.js +59 -0
  28. package/getExternalAccessIntegrations.js.map +1 -0
  29. package/hybridTable.d.ts +318 -0
  30. package/hybridTable.d.ts.map +1 -0
  31. package/hybridTable.js +227 -0
  32. package/hybridTable.js.map +1 -0
  33. package/index.d.ts +9 -0
  34. package/index.d.ts.map +1 -1
  35. package/index.js +19 -6
  36. package/index.js.map +1 -1
  37. package/package.json +2 -2
  38. package/provider.d.ts +14 -6
  39. package/provider.d.ts.map +1 -1
  40. package/provider.js +1 -0
  41. package/provider.js.map +1 -1
  42. package/stage.d.ts +1 -1
  43. package/stage.js +1 -1
  44. package/storageIntegration.d.ts +1 -1
  45. package/storageIntegration.js +1 -1
  46. package/types/input.d.ts +170 -0
  47. package/types/input.d.ts.map +1 -1
  48. package/types/output.d.ts +198 -0
  49. package/types/output.d.ts.map +1 -1
  50. package/userAuthenticationPolicyAttachment.d.ts +6 -6
  51. package/userSessionPolicyAttachment.d.ts +6 -6
@@ -2,8 +2,6 @@ import * as pulumi from "@pulumi/pulumi";
2
2
  /**
3
3
  * > **Caution: Preview Feature** This feature is considered a preview feature in the provider, regardless of the state of the resource in Snowflake. We do not guarantee its stability. It will be reworked and marked as a stable feature in future releases. Breaking changes are expected, even without bumping the major version. To use this feature, add the relevant feature name to `previewFeaturesEnabled` field in the provider configuration. Please always refer to the Getting Help section in our Github repo to best determine how to get help for your questions.
4
4
  *
5
- * > **Required warehouse** For this resource, the provider uses [policy references](https://docs.snowflake.com/en/sql-reference/functions/policy_references) to get information about policies attached to the current account. This function requires a warehouse in the connection. Please, make sure you have either set a `DEFAULT_WAREHOUSE` for the user, or specified a warehouse in the provider configuration.
6
- *
7
5
  * > **Warning** This resource shouldn't be used with `snowflake.CurrentAccount` resource in the same configuration, as it may lead to unexpected behavior.
8
6
  *
9
7
  * Specifies the authentication policy to use for the current account. To set the authentication policy of a different account, use a provider alias.
@@ -19,7 +17,20 @@ import * as pulumi from "@pulumi/pulumi";
19
17
  * schema: "security",
20
18
  * name: "default_policy",
21
19
  * });
20
+ * // Attach the authentication policy account-wide (default behavior).
22
21
  * const attachment = new snowflake.AccountAuthenticationPolicyAttachment("attachment", {authenticationPolicy: _default.fullyQualifiedName});
22
+ * const serviceUsers = new snowflake.AuthenticationPolicy("service_users", {
23
+ * database: "prod",
24
+ * schema: "security",
25
+ * name: "service_users_policy",
26
+ * });
27
+ * // Attach the authentication policy to all service users only.
28
+ * // Use for_all_person_users = true to target all person users instead.
29
+ * // The two fields are mutually exclusive; when neither is set, the policy is attached account-wide.
30
+ * const attachmentServiceUsers = new snowflake.AccountAuthenticationPolicyAttachment("attachment_service_users", {
31
+ * authenticationPolicy: serviceUsers.fullyQualifiedName,
32
+ * forAllServiceUsers: true,
33
+ * });
23
34
  * ```
24
35
  * > **Note** Instead of using fully_qualified_name, you can reference objects managed outside Terraform by constructing a correct ID, consult identifiers guide.
25
36
  * <!-- TODO(SNOW-1634854): include an example showing both methods-->
@@ -28,8 +39,22 @@ import * as pulumi from "@pulumi/pulumi";
28
39
  *
29
40
  * ## Import
30
41
  *
42
+ * Account-wide attachment:
43
+ *
44
+ * ```sh
45
+ * $ pulumi import snowflake:index/accountAuthenticationPolicyAttachment:AccountAuthenticationPolicyAttachment example '"<database_name>"."<schema_name>"."<authentication_policy_name>"|ACCOUNT'
46
+ * ```
47
+ *
48
+ * For all person users:
49
+ *
50
+ * ```sh
51
+ * $ pulumi import snowflake:index/accountAuthenticationPolicyAttachment:AccountAuthenticationPolicyAttachment example '"<database_name>"."<schema_name>"."<authentication_policy_name>"|PERSON_USERS'
52
+ * ```
53
+ *
54
+ * For all service users:
55
+ *
31
56
  * ```sh
32
- * $ pulumi import snowflake:index/accountAuthenticationPolicyAttachment:AccountAuthenticationPolicyAttachment example '"<database_name>"."<schema_name>"."<authentication_policy_name>"'
57
+ * $ pulumi import snowflake:index/accountAuthenticationPolicyAttachment:AccountAuthenticationPolicyAttachment example '"<database_name>"."<schema_name>"."<authentication_policy_name>"|SERVICE_USERS'
33
58
  * ```
34
59
  */
35
60
  export declare class AccountAuthenticationPolicyAttachment extends pulumi.CustomResource {
@@ -49,9 +74,17 @@ export declare class AccountAuthenticationPolicyAttachment extends pulumi.Custom
49
74
  */
50
75
  static isInstance(obj: any): obj is AccountAuthenticationPolicyAttachment;
51
76
  /**
52
- * Fully qualified name of the authentication policy to apply to the current account.
77
+ * Fully qualified name of the authentication policy to apply to the current account. Due to technical limitations (read more here), avoid using pipes (`|`).
53
78
  */
54
79
  readonly authenticationPolicy: pulumi.Output<string>;
80
+ /**
81
+ * If true, attaches the authentication policy to all person users in the current account. Conflicts with `forAllServiceUsers`. When neither field is set, the policy is attached account-wide.
82
+ */
83
+ readonly forAllPersonUsers: pulumi.Output<boolean | undefined>;
84
+ /**
85
+ * If true, attaches the authentication policy to all service users in the current account. Conflicts with `forAllPersonUsers`. When neither field is set, the policy is attached account-wide.
86
+ */
87
+ readonly forAllServiceUsers: pulumi.Output<boolean | undefined>;
55
88
  /**
56
89
  * Create a AccountAuthenticationPolicyAttachment resource with the given unique name, arguments, and options.
57
90
  *
@@ -66,17 +99,33 @@ export declare class AccountAuthenticationPolicyAttachment extends pulumi.Custom
66
99
  */
67
100
  export interface AccountAuthenticationPolicyAttachmentState {
68
101
  /**
69
- * Fully qualified name of the authentication policy to apply to the current account.
102
+ * Fully qualified name of the authentication policy to apply to the current account. Due to technical limitations (read more here), avoid using pipes (`|`).
70
103
  */
71
104
  authenticationPolicy?: pulumi.Input<string | undefined>;
105
+ /**
106
+ * If true, attaches the authentication policy to all person users in the current account. Conflicts with `forAllServiceUsers`. When neither field is set, the policy is attached account-wide.
107
+ */
108
+ forAllPersonUsers?: pulumi.Input<boolean | undefined>;
109
+ /**
110
+ * If true, attaches the authentication policy to all service users in the current account. Conflicts with `forAllPersonUsers`. When neither field is set, the policy is attached account-wide.
111
+ */
112
+ forAllServiceUsers?: pulumi.Input<boolean | undefined>;
72
113
  }
73
114
  /**
74
115
  * The set of arguments for constructing a AccountAuthenticationPolicyAttachment resource.
75
116
  */
76
117
  export interface AccountAuthenticationPolicyAttachmentArgs {
77
118
  /**
78
- * Fully qualified name of the authentication policy to apply to the current account.
119
+ * Fully qualified name of the authentication policy to apply to the current account. Due to technical limitations (read more here), avoid using pipes (`|`).
79
120
  */
80
121
  authenticationPolicy: pulumi.Input<string>;
122
+ /**
123
+ * If true, attaches the authentication policy to all person users in the current account. Conflicts with `forAllServiceUsers`. When neither field is set, the policy is attached account-wide.
124
+ */
125
+ forAllPersonUsers?: pulumi.Input<boolean | undefined>;
126
+ /**
127
+ * If true, attaches the authentication policy to all service users in the current account. Conflicts with `forAllPersonUsers`. When neither field is set, the policy is attached account-wide.
128
+ */
129
+ forAllServiceUsers?: pulumi.Input<boolean | undefined>;
81
130
  }
82
131
  //# sourceMappingURL=accountAuthenticationPolicyAttachment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accountAuthenticationPolicyAttachment.d.ts","sourceRoot":"","sources":["../accountAuthenticationPolicyAttachment.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAAa,qCAAsC,SAAQ,MAAM,CAAC,cAAc;IAC5E;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,0CAA0C,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,qCAAqC;IAO5L;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,qCAAqC;IAOhF;;OAEG;IACH,SAAwB,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEpE;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yCAAyC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;CAiBjH;AAED;;GAEG;AACH,MAAM,WAAW,0CAA0C;IACvD;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC3D;AAED;;GAEG;AACH,MAAM,WAAW,yCAAyC;IACtD;;OAEG;IACH,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAC9C"}
1
+ {"version":3,"file":"accountAuthenticationPolicyAttachment.d.ts","sourceRoot":"","sources":["../accountAuthenticationPolicyAttachment.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,qBAAa,qCAAsC,SAAQ,MAAM,CAAC,cAAc;IAC5E;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,0CAA0C,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,qCAAqC;IAO5L;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,qCAAqC;IAOhF;;OAEG;IACH,SAAwB,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpE;;OAEG;IACH,SAAwB,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC9E;;OAEG;IACH,SAAwB,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE/E;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yCAAyC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;CAqBjH;AAED;;GAEG;AACH,MAAM,WAAW,0CAA0C;IACvD;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxD;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IACtD;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;CAC1D;AAED;;GAEG;AACH,MAAM,WAAW,yCAAyC;IACtD;;OAEG;IACH,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IACtD;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;CAC1D"}
@@ -31,8 +31,6 @@ const utilities = __importStar(require("./utilities"));
31
31
  /**
32
32
  * > **Caution: Preview Feature** This feature is considered a preview feature in the provider, regardless of the state of the resource in Snowflake. We do not guarantee its stability. It will be reworked and marked as a stable feature in future releases. Breaking changes are expected, even without bumping the major version. To use this feature, add the relevant feature name to `previewFeaturesEnabled` field in the provider configuration. Please always refer to the Getting Help section in our Github repo to best determine how to get help for your questions.
33
33
  *
34
- * > **Required warehouse** For this resource, the provider uses [policy references](https://docs.snowflake.com/en/sql-reference/functions/policy_references) to get information about policies attached to the current account. This function requires a warehouse in the connection. Please, make sure you have either set a `DEFAULT_WAREHOUSE` for the user, or specified a warehouse in the provider configuration.
35
- *
36
34
  * > **Warning** This resource shouldn't be used with `snowflake.CurrentAccount` resource in the same configuration, as it may lead to unexpected behavior.
37
35
  *
38
36
  * Specifies the authentication policy to use for the current account. To set the authentication policy of a different account, use a provider alias.
@@ -48,7 +46,20 @@ const utilities = __importStar(require("./utilities"));
48
46
  * schema: "security",
49
47
  * name: "default_policy",
50
48
  * });
49
+ * // Attach the authentication policy account-wide (default behavior).
51
50
  * const attachment = new snowflake.AccountAuthenticationPolicyAttachment("attachment", {authenticationPolicy: _default.fullyQualifiedName});
51
+ * const serviceUsers = new snowflake.AuthenticationPolicy("service_users", {
52
+ * database: "prod",
53
+ * schema: "security",
54
+ * name: "service_users_policy",
55
+ * });
56
+ * // Attach the authentication policy to all service users only.
57
+ * // Use for_all_person_users = true to target all person users instead.
58
+ * // The two fields are mutually exclusive; when neither is set, the policy is attached account-wide.
59
+ * const attachmentServiceUsers = new snowflake.AccountAuthenticationPolicyAttachment("attachment_service_users", {
60
+ * authenticationPolicy: serviceUsers.fullyQualifiedName,
61
+ * forAllServiceUsers: true,
62
+ * });
52
63
  * ```
53
64
  * > **Note** Instead of using fully_qualified_name, you can reference objects managed outside Terraform by constructing a correct ID, consult identifiers guide.
54
65
  * <!-- TODO(SNOW-1634854): include an example showing both methods-->
@@ -57,8 +68,22 @@ const utilities = __importStar(require("./utilities"));
57
68
  *
58
69
  * ## Import
59
70
  *
71
+ * Account-wide attachment:
72
+ *
73
+ * ```sh
74
+ * $ pulumi import snowflake:index/accountAuthenticationPolicyAttachment:AccountAuthenticationPolicyAttachment example '"<database_name>"."<schema_name>"."<authentication_policy_name>"|ACCOUNT'
75
+ * ```
76
+ *
77
+ * For all person users:
78
+ *
79
+ * ```sh
80
+ * $ pulumi import snowflake:index/accountAuthenticationPolicyAttachment:AccountAuthenticationPolicyAttachment example '"<database_name>"."<schema_name>"."<authentication_policy_name>"|PERSON_USERS'
81
+ * ```
82
+ *
83
+ * For all service users:
84
+ *
60
85
  * ```sh
61
- * $ pulumi import snowflake:index/accountAuthenticationPolicyAttachment:AccountAuthenticationPolicyAttachment example '"<database_name>"."<schema_name>"."<authentication_policy_name>"'
86
+ * $ pulumi import snowflake:index/accountAuthenticationPolicyAttachment:AccountAuthenticationPolicyAttachment example '"<database_name>"."<schema_name>"."<authentication_policy_name>"|SERVICE_USERS'
62
87
  * ```
63
88
  */
64
89
  class AccountAuthenticationPolicyAttachment extends pulumi.CustomResource {
@@ -92,6 +117,8 @@ class AccountAuthenticationPolicyAttachment extends pulumi.CustomResource {
92
117
  if (opts.id) {
93
118
  const state = argsOrState;
94
119
  resourceInputs["authenticationPolicy"] = state?.authenticationPolicy;
120
+ resourceInputs["forAllPersonUsers"] = state?.forAllPersonUsers;
121
+ resourceInputs["forAllServiceUsers"] = state?.forAllServiceUsers;
95
122
  }
96
123
  else {
97
124
  const args = argsOrState;
@@ -99,6 +126,8 @@ class AccountAuthenticationPolicyAttachment extends pulumi.CustomResource {
99
126
  throw new Error("Missing required property 'authenticationPolicy'");
100
127
  }
101
128
  resourceInputs["authenticationPolicy"] = args?.authenticationPolicy;
129
+ resourceInputs["forAllPersonUsers"] = args?.forAllPersonUsers;
130
+ resourceInputs["forAllServiceUsers"] = args?.forAllServiceUsers;
102
131
  }
103
132
  opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
104
133
  super(AccountAuthenticationPolicyAttachment.__pulumiType, name, resourceInputs, opts);
@@ -1 +1 @@
1
- {"version":3,"file":"accountAuthenticationPolicyAttachment.js","sourceRoot":"","sources":["../accountAuthenticationPolicyAttachment.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAa,qCAAsC,SAAQ,MAAM,CAAC,cAAc;IAC5E;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAkD,EAAE,IAAmC;QAChJ,OAAO,IAAI,qCAAqC,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,6FAA6F,CAAC;IAEpI;;;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,qCAAqC,CAAC,YAAY,CAAC;IACtF,CAAC;IAeD,YAAY,IAAY,EAAE,WAAoG,EAAE,IAAmC;QAC/J,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAqE,CAAC;YACpF,cAAc,CAAC,sBAAsB,CAAC,GAAG,KAAK,EAAE,oBAAoB,CAAC;SACxE;aAAM;YACH,MAAM,IAAI,GAAG,WAAoE,CAAC;YAClF,IAAI,IAAI,EAAE,oBAAoB,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACvE;YACD,cAAc,CAAC,sBAAsB,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC;SACvE;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,qCAAqC,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1F,CAAC;;AAxDL,sFAyDC"}
1
+ {"version":3,"file":"accountAuthenticationPolicyAttachment.js","sourceRoot":"","sources":["../accountAuthenticationPolicyAttachment.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,MAAa,qCAAsC,SAAQ,MAAM,CAAC,cAAc;IAC5E;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAkD,EAAE,IAAmC;QAChJ,OAAO,IAAI,qCAAqC,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,6FAA6F,CAAC;IAEpI;;;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,qCAAqC,CAAC,YAAY,CAAC;IACtF,CAAC;IAuBD,YAAY,IAAY,EAAE,WAAoG,EAAE,IAAmC;QAC/J,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAqE,CAAC;YACpF,cAAc,CAAC,sBAAsB,CAAC,GAAG,KAAK,EAAE,oBAAoB,CAAC;YACrE,cAAc,CAAC,mBAAmB,CAAC,GAAG,KAAK,EAAE,iBAAiB,CAAC;YAC/D,cAAc,CAAC,oBAAoB,CAAC,GAAG,KAAK,EAAE,kBAAkB,CAAC;SACpE;aAAM;YACH,MAAM,IAAI,GAAG,WAAoE,CAAC;YAClF,IAAI,IAAI,EAAE,oBAAoB,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACvE;YACD,cAAc,CAAC,sBAAsB,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC;YACpE,cAAc,CAAC,mBAAmB,CAAC,GAAG,IAAI,EAAE,iBAAiB,CAAC;YAC9D,cAAc,CAAC,oBAAoB,CAAC,GAAG,IAAI,EAAE,kBAAkB,CAAC;SACnE;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,qCAAqC,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1F,CAAC;;AApEL,sFAqEC"}
@@ -1,7 +1,5 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  /**
3
- * > **Required warehouse** For this resource, the provider uses [policy references](https://docs.snowflake.com/en/sql-reference/functions/policy_references) to get information about policies attached to the current account. This function requires a warehouse in the connection. Please, make sure you have either set a `DEFAULT_WAREHOUSE` for the user, or specified a warehouse in the provider configuration.
4
- *
5
3
  * > **Warning** This resource shouldn't be used with `snowflake.CurrentAccount` resource in the same configuration, as it may lead to unexpected behavior.
6
4
  *
7
5
  * Specifies the session policy to use for the current account. To set the session policy of a different account, use a provider alias.
@@ -17,7 +15,20 @@ import * as pulumi from "@pulumi/pulumi";
17
15
  * schema: "security",
18
16
  * name: "default_session_policy",
19
17
  * });
18
+ * // Attach the session policy account-wide (default behavior).
20
19
  * const attachment = new snowflake.AccountSessionPolicyAttachment("attachment", {sessionPolicyName: sp.fullyQualifiedName});
20
+ * const serviceUsers = new snowflake.SessionPolicy("service_users", {
21
+ * database: "prod",
22
+ * schema: "security",
23
+ * name: "service_users_session_policy",
24
+ * });
25
+ * // Attach the session policy to all service users only.
26
+ * // Use for_all_person_users = true to target all person users instead.
27
+ * // The two fields are mutually exclusive; when neither is set, the policy is attached account-wide.
28
+ * const attachmentServiceUsers = new snowflake.AccountSessionPolicyAttachment("attachment_service_users", {
29
+ * sessionPolicyName: serviceUsers.fullyQualifiedName,
30
+ * forAllServiceUsers: true,
31
+ * });
21
32
  * ```
22
33
  * > **Note** Instead of using fully_qualified_name, you can reference objects managed outside Terraform by constructing a correct ID, consult identifiers guide.
23
34
  * <!-- TODO(SNOW-1634854): include an example showing both methods-->
@@ -26,8 +37,22 @@ import * as pulumi from "@pulumi/pulumi";
26
37
  *
27
38
  * ## Import
28
39
  *
40
+ * Account-wide attachment:
41
+ *
42
+ * ```sh
43
+ * $ pulumi import snowflake:index/accountSessionPolicyAttachment:AccountSessionPolicyAttachment example '"<database_name>"."<schema_name>"."<session_policy_name>"|ACCOUNT'
44
+ * ```
45
+ *
46
+ * For all person users:
47
+ *
48
+ * ```sh
49
+ * $ pulumi import snowflake:index/accountSessionPolicyAttachment:AccountSessionPolicyAttachment example '"<database_name>"."<schema_name>"."<session_policy_name>"|PERSON_USERS'
50
+ * ```
51
+ *
52
+ * For all service users:
53
+ *
29
54
  * ```sh
30
- * $ pulumi import snowflake:index/accountSessionPolicyAttachment:AccountSessionPolicyAttachment example '"<database_name>"."<schema_name>"."<session_policy_name>"'
55
+ * $ pulumi import snowflake:index/accountSessionPolicyAttachment:AccountSessionPolicyAttachment example '"<database_name>"."<schema_name>"."<session_policy_name>"|SERVICE_USERS'
31
56
  * ```
32
57
  */
33
58
  export declare class AccountSessionPolicyAttachment extends pulumi.CustomResource {
@@ -47,7 +72,15 @@ export declare class AccountSessionPolicyAttachment extends pulumi.CustomResourc
47
72
  */
48
73
  static isInstance(obj: any): obj is AccountSessionPolicyAttachment;
49
74
  /**
50
- * Fully qualified name of the session policy to apply to the current account.
75
+ * If true, attaches the session policy to all person users in the current account. Conflicts with `forAllServiceUsers`. When neither field is set, the policy is attached account-wide.
76
+ */
77
+ readonly forAllPersonUsers: pulumi.Output<boolean | undefined>;
78
+ /**
79
+ * If true, attaches the session policy to all service users in the current account. Conflicts with `forAllPersonUsers`. When neither field is set, the policy is attached account-wide.
80
+ */
81
+ readonly forAllServiceUsers: pulumi.Output<boolean | undefined>;
82
+ /**
83
+ * Fully qualified name of the session policy to apply to the current account. Due to technical limitations (read more here), avoid using pipes (`|`).
51
84
  */
52
85
  readonly sessionPolicyName: pulumi.Output<string>;
53
86
  /**
@@ -64,7 +97,15 @@ export declare class AccountSessionPolicyAttachment extends pulumi.CustomResourc
64
97
  */
65
98
  export interface AccountSessionPolicyAttachmentState {
66
99
  /**
67
- * Fully qualified name of the session policy to apply to the current account.
100
+ * If true, attaches the session policy to all person users in the current account. Conflicts with `forAllServiceUsers`. When neither field is set, the policy is attached account-wide.
101
+ */
102
+ forAllPersonUsers?: pulumi.Input<boolean | undefined>;
103
+ /**
104
+ * If true, attaches the session policy to all service users in the current account. Conflicts with `forAllPersonUsers`. When neither field is set, the policy is attached account-wide.
105
+ */
106
+ forAllServiceUsers?: pulumi.Input<boolean | undefined>;
107
+ /**
108
+ * Fully qualified name of the session policy to apply to the current account. Due to technical limitations (read more here), avoid using pipes (`|`).
68
109
  */
69
110
  sessionPolicyName?: pulumi.Input<string | undefined>;
70
111
  }
@@ -73,7 +114,15 @@ export interface AccountSessionPolicyAttachmentState {
73
114
  */
74
115
  export interface AccountSessionPolicyAttachmentArgs {
75
116
  /**
76
- * Fully qualified name of the session policy to apply to the current account.
117
+ * If true, attaches the session policy to all person users in the current account. Conflicts with `forAllServiceUsers`. When neither field is set, the policy is attached account-wide.
118
+ */
119
+ forAllPersonUsers?: pulumi.Input<boolean | undefined>;
120
+ /**
121
+ * If true, attaches the session policy to all service users in the current account. Conflicts with `forAllPersonUsers`. When neither field is set, the policy is attached account-wide.
122
+ */
123
+ forAllServiceUsers?: pulumi.Input<boolean | undefined>;
124
+ /**
125
+ * Fully qualified name of the session policy to apply to the current account. Due to technical limitations (read more here), avoid using pipes (`|`).
77
126
  */
78
127
  sessionPolicyName: pulumi.Input<string>;
79
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"accountSessionPolicyAttachment.d.ts","sourceRoot":"","sources":["../accountSessionPolicyAttachment.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,8BAA+B,SAAQ,MAAM,CAAC,cAAc;IACrE;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,mCAAmC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,8BAA8B;IAO9K;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,8BAA8B;IAOzE;;OAEG;IACH,SAAwB,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEjE;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;CAiB1G;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAChD;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACxD;AAED;;GAEG;AACH,MAAM,WAAW,kCAAkC;IAC/C;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAC3C"}
1
+ {"version":3,"file":"accountSessionPolicyAttachment.d.ts","sourceRoot":"","sources":["../accountSessionPolicyAttachment.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,qBAAa,8BAA+B,SAAQ,MAAM,CAAC,cAAc;IACrE;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,mCAAmC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,8BAA8B;IAO9K;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,8BAA8B;IAOzE;;OAEG;IACH,SAAwB,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC9E;;OAEG;IACH,SAAwB,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC/E;;OAEG;IACH,SAAwB,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEjE;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;CAqB1G;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAChD;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IACtD;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IACvD;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACxD;AAED;;GAEG;AACH,MAAM,WAAW,kCAAkC;IAC/C;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IACtD;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IACvD;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAC3C"}
@@ -29,8 +29,6 @@ exports.AccountSessionPolicyAttachment = void 0;
29
29
  const pulumi = __importStar(require("@pulumi/pulumi"));
30
30
  const utilities = __importStar(require("./utilities"));
31
31
  /**
32
- * > **Required warehouse** For this resource, the provider uses [policy references](https://docs.snowflake.com/en/sql-reference/functions/policy_references) to get information about policies attached to the current account. This function requires a warehouse in the connection. Please, make sure you have either set a `DEFAULT_WAREHOUSE` for the user, or specified a warehouse in the provider configuration.
33
- *
34
32
  * > **Warning** This resource shouldn't be used with `snowflake.CurrentAccount` resource in the same configuration, as it may lead to unexpected behavior.
35
33
  *
36
34
  * Specifies the session policy to use for the current account. To set the session policy of a different account, use a provider alias.
@@ -46,7 +44,20 @@ const utilities = __importStar(require("./utilities"));
46
44
  * schema: "security",
47
45
  * name: "default_session_policy",
48
46
  * });
47
+ * // Attach the session policy account-wide (default behavior).
49
48
  * const attachment = new snowflake.AccountSessionPolicyAttachment("attachment", {sessionPolicyName: sp.fullyQualifiedName});
49
+ * const serviceUsers = new snowflake.SessionPolicy("service_users", {
50
+ * database: "prod",
51
+ * schema: "security",
52
+ * name: "service_users_session_policy",
53
+ * });
54
+ * // Attach the session policy to all service users only.
55
+ * // Use for_all_person_users = true to target all person users instead.
56
+ * // The two fields are mutually exclusive; when neither is set, the policy is attached account-wide.
57
+ * const attachmentServiceUsers = new snowflake.AccountSessionPolicyAttachment("attachment_service_users", {
58
+ * sessionPolicyName: serviceUsers.fullyQualifiedName,
59
+ * forAllServiceUsers: true,
60
+ * });
50
61
  * ```
51
62
  * > **Note** Instead of using fully_qualified_name, you can reference objects managed outside Terraform by constructing a correct ID, consult identifiers guide.
52
63
  * <!-- TODO(SNOW-1634854): include an example showing both methods-->
@@ -55,8 +66,22 @@ const utilities = __importStar(require("./utilities"));
55
66
  *
56
67
  * ## Import
57
68
  *
69
+ * Account-wide attachment:
70
+ *
71
+ * ```sh
72
+ * $ pulumi import snowflake:index/accountSessionPolicyAttachment:AccountSessionPolicyAttachment example '"<database_name>"."<schema_name>"."<session_policy_name>"|ACCOUNT'
73
+ * ```
74
+ *
75
+ * For all person users:
76
+ *
77
+ * ```sh
78
+ * $ pulumi import snowflake:index/accountSessionPolicyAttachment:AccountSessionPolicyAttachment example '"<database_name>"."<schema_name>"."<session_policy_name>"|PERSON_USERS'
79
+ * ```
80
+ *
81
+ * For all service users:
82
+ *
58
83
  * ```sh
59
- * $ pulumi import snowflake:index/accountSessionPolicyAttachment:AccountSessionPolicyAttachment example '"<database_name>"."<schema_name>"."<session_policy_name>"'
84
+ * $ pulumi import snowflake:index/accountSessionPolicyAttachment:AccountSessionPolicyAttachment example '"<database_name>"."<schema_name>"."<session_policy_name>"|SERVICE_USERS'
60
85
  * ```
61
86
  */
62
87
  class AccountSessionPolicyAttachment extends pulumi.CustomResource {
@@ -89,6 +114,8 @@ class AccountSessionPolicyAttachment extends pulumi.CustomResource {
89
114
  opts = opts || {};
90
115
  if (opts.id) {
91
116
  const state = argsOrState;
117
+ resourceInputs["forAllPersonUsers"] = state?.forAllPersonUsers;
118
+ resourceInputs["forAllServiceUsers"] = state?.forAllServiceUsers;
92
119
  resourceInputs["sessionPolicyName"] = state?.sessionPolicyName;
93
120
  }
94
121
  else {
@@ -96,6 +123,8 @@ class AccountSessionPolicyAttachment extends pulumi.CustomResource {
96
123
  if (args?.sessionPolicyName === undefined && !opts.urn) {
97
124
  throw new Error("Missing required property 'sessionPolicyName'");
98
125
  }
126
+ resourceInputs["forAllPersonUsers"] = args?.forAllPersonUsers;
127
+ resourceInputs["forAllServiceUsers"] = args?.forAllServiceUsers;
99
128
  resourceInputs["sessionPolicyName"] = args?.sessionPolicyName;
100
129
  }
101
130
  opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
@@ -1 +1 @@
1
- {"version":3,"file":"accountSessionPolicyAttachment.js","sourceRoot":"","sources":["../accountSessionPolicyAttachment.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAa,8BAA+B,SAAQ,MAAM,CAAC,cAAc;IACrE;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA2C,EAAE,IAAmC;QACzI,OAAO,IAAI,8BAA8B,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,+EAA+E,CAAC;IAEtH;;;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,8BAA8B,CAAC,YAAY,CAAC;IAC/E,CAAC;IAeD,YAAY,IAAY,EAAE,WAAsF,EAAE,IAAmC;QACjJ,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA8D,CAAC;YAC7E,cAAc,CAAC,mBAAmB,CAAC,GAAG,KAAK,EAAE,iBAAiB,CAAC;SAClE;aAAM;YACH,MAAM,IAAI,GAAG,WAA6D,CAAC;YAC3E,IAAI,IAAI,EAAE,iBAAiB,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACpD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;aACpE;YACD,cAAc,CAAC,mBAAmB,CAAC,GAAG,IAAI,EAAE,iBAAiB,CAAC;SACjE;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,8BAA8B,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACnF,CAAC;;AAxDL,wEAyDC"}
1
+ {"version":3,"file":"accountSessionPolicyAttachment.js","sourceRoot":"","sources":["../accountSessionPolicyAttachment.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,MAAa,8BAA+B,SAAQ,MAAM,CAAC,cAAc;IACrE;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA2C,EAAE,IAAmC;QACzI,OAAO,IAAI,8BAA8B,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,+EAA+E,CAAC;IAEtH;;;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,8BAA8B,CAAC,YAAY,CAAC;IAC/E,CAAC;IAuBD,YAAY,IAAY,EAAE,WAAsF,EAAE,IAAmC;QACjJ,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA8D,CAAC;YAC7E,cAAc,CAAC,mBAAmB,CAAC,GAAG,KAAK,EAAE,iBAAiB,CAAC;YAC/D,cAAc,CAAC,oBAAoB,CAAC,GAAG,KAAK,EAAE,kBAAkB,CAAC;YACjE,cAAc,CAAC,mBAAmB,CAAC,GAAG,KAAK,EAAE,iBAAiB,CAAC;SAClE;aAAM;YACH,MAAM,IAAI,GAAG,WAA6D,CAAC;YAC3E,IAAI,IAAI,EAAE,iBAAiB,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACpD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;aACpE;YACD,cAAc,CAAC,mBAAmB,CAAC,GAAG,IAAI,EAAE,iBAAiB,CAAC;YAC9D,cAAc,CAAC,oBAAoB,CAAC,GAAG,IAAI,EAAE,kBAAkB,CAAC;YAChE,cAAc,CAAC,mBAAmB,CAAC,GAAG,IAAI,EAAE,iBAAiB,CAAC;SACjE;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,8BAA8B,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACnF,CAAC;;AApEL,wEAqEC"}
@@ -4,7 +4,7 @@ import * as pulumi from "@pulumi/pulumi";
4
4
  *
5
5
  * > **Note** Currently, API integrations for `gitHttpsApi` API provider are not supported. It will be added in the future.
6
6
  *
7
- * > **Deprecation** This resource is deprecated and will be removed in a future major version release. Please use one of the new resources instead: `snowflake.ApiIntegrationAmazonApiGateway` | `snowflake.ApiIntegrationAzureApiManagement` | `snowflake.ApiIntegrationGoogleCloudApiGateway` | `snowflake.ApiIntegrationGitRepositoryGithubApp` | `snowflake.ApiIntegrationGitRepositoryOauth2` | `snowflake.ApiIntegrationGitRepositoryToken` | `snowflake.ApiIntegrationGitRepositoryPrivateLink` | `snowflake.ApiIntegrationExternalMcpOauth2` | `snowflake.ApiIntegrationExternalMcpDynamicClient`. <deprecation>
7
+ * > **Deprecation** This resource is deprecated and will be removed in a future major version release. Please use one of the new resources instead: snowflake.ApiIntegrationAmazonApiGateway | snowflake.ApiIntegrationAzureApiManagement | snowflake.ApiIntegrationGoogleCloudApiGateway | snowflake.ApiIntegrationGitRepositoryGithubApp | snowflake.ApiIntegrationGitRepositoryOauth2 | snowflake.ApiIntegrationGitRepositoryToken | snowflake.ApiIntegrationGitRepositoryPrivateLink | snowflake.ApiIntegrationExternalMcpOauth2 | snowflake_api_integration_external_mcp_dynamic_client. <deprecation>
8
8
  *
9
9
  * ## Example Usage
10
10
  *
package/apiIntegration.js CHANGED
@@ -33,7 +33,7 @@ const utilities = __importStar(require("./utilities"));
33
33
  *
34
34
  * > **Note** Currently, API integrations for `gitHttpsApi` API provider are not supported. It will be added in the future.
35
35
  *
36
- * > **Deprecation** This resource is deprecated and will be removed in a future major version release. Please use one of the new resources instead: `snowflake.ApiIntegrationAmazonApiGateway` | `snowflake.ApiIntegrationAzureApiManagement` | `snowflake.ApiIntegrationGoogleCloudApiGateway` | `snowflake.ApiIntegrationGitRepositoryGithubApp` | `snowflake.ApiIntegrationGitRepositoryOauth2` | `snowflake.ApiIntegrationGitRepositoryToken` | `snowflake.ApiIntegrationGitRepositoryPrivateLink` | `snowflake.ApiIntegrationExternalMcpOauth2` | `snowflake.ApiIntegrationExternalMcpDynamicClient`. <deprecation>
36
+ * > **Deprecation** This resource is deprecated and will be removed in a future major version release. Please use one of the new resources instead: snowflake.ApiIntegrationAmazonApiGateway | snowflake.ApiIntegrationAzureApiManagement | snowflake.ApiIntegrationGoogleCloudApiGateway | snowflake.ApiIntegrationGitRepositoryGithubApp | snowflake.ApiIntegrationGitRepositoryOauth2 | snowflake.ApiIntegrationGitRepositoryToken | snowflake.ApiIntegrationGitRepositoryPrivateLink | snowflake.ApiIntegrationExternalMcpOauth2 | snowflake_api_integration_external_mcp_dynamic_client. <deprecation>
37
37
  *
38
38
  * ## Example Usage
39
39
  *
package/computePool.d.ts CHANGED
@@ -6,6 +6,8 @@ import * as outputs from "./types/output";
6
6
  *
7
7
  * > **Note** Managing compute pool state is limited. It is handled by `initiallySuspended`, `autoSuspendSecs`, and `autoResume` fields. The provider does not support managing the state of compute pools in Snowflake with `ALTER ... SUSPEND` and `ALTER ... RESUME`. See [Compute pool lifecycle documentation](https://docs.snowflake.com/en/developer-guide/snowpark-container-services/working-with-compute-pool#compute-pool-lifecycle) for more details.
8
8
  *
9
+ * > **Note** `backupInstanceFamilies` maps to a Snowflake [preview feature](https://docs.snowflake.com/en/release-notes/preview-features). It is available to all accounts, but its behavior may change before it reaches general availability.
10
+ *
9
11
  * Resource used to manage compute pools. For more information, check [compute pools documentation](https://docs.snowflake.com/en/sql-reference/sql/create-compute-pool). A compute pool is a collection of one or more virtual machine (VM) nodes on which Snowflake runs your Snowpark Container Services services (including job services). See [Working with compute pools](https://docs.snowflake.com/en/developer-guide/snowpark-container-services/working-with-compute-pool) developer guide for more details.
10
12
  *
11
13
  * ## Example Usage
@@ -31,6 +33,10 @@ import * as outputs from "./types/output";
31
33
  * minNodes: 1,
32
34
  * maxNodes: 2,
33
35
  * instanceFamily: "CPU_X64_S",
36
+ * backupInstanceFamilies: [
37
+ * "CPU_X64_M",
38
+ * "CPU_X64_L",
39
+ * ],
34
40
  * autoResume: "true",
35
41
  * initiallySuspended: "true",
36
42
  * autoSuspendSecs: 1200,
@@ -70,6 +76,10 @@ export declare class ComputePool extends pulumi.CustomResource {
70
76
  * (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) Number of seconds of inactivity after which you want Snowflake to automatically suspend the compute pool.
71
77
  */
72
78
  readonly autoSuspendSecs: pulumi.Output<number | undefined>;
79
+ /**
80
+ * Specifies an ordered list of instance families to fall back on when the primary `instanceFamily` is unavailable. The order determines the fallback priority. Valid values are (case-insensitive): `CPU_X64_XS` | `CPU_X64_S` | `CPU_X64_M` | `CPU_X64_SL` | `CPU_X64_L` | `HIGHMEM_X64_S` | `HIGHMEM_X64_M` | `HIGHMEM_X64_L` | `HIGHMEM_X64_SL` | `GPU_NV_S` | `GPU_NV_M` | `GPU_NV_L` | `GPU_NV_XS` | `GPU_NV_SM` | `GPU_NV_2M` | `GPU_NV_3M` | `GPU_NV_SL` | `GPU_GCP_NV_L4_1_24G` | `GPU_GCP_NV_L4_4_24G` | `GPU_GCP_NV_A100_8_40G` | `GEN_ARM_G1_2` | `GEN_ARM_G1_4` | `GEN_ARM_G1_8` | `GEN_ARM_G1_16` | `GEN_ARM_G1_32` | `GEN_X64_G2_2` | `GEN_X64_G2_4` | `GEN_X64_G2_8` | `GEN_X64_G2_16` | `GEN_X64_G2_32` | `MEM_X64_G2_8` | `MEM_X64_G2_32` | `MEM_X64_G2_64` | `MEM_X64_G2_96` | `MEM_X64_G2_192` | `GPU_L40S_G1_8` | `GPU_L40S_G1_16` | `GPU_L40S_G1_48` | `GPU_L40S_G1_192` | `GPU_R6K_G1_8` | `GPU_R6K_G1_16` | `GPU_R6K_G1_32` | `GPU_R6K_G1_48` | `GPU_R6K_G1_96` | `GPU_R6K_G1_192` | `GPU_A100_G1_12` | `GPU_A100_G1_48`.
81
+ */
82
+ readonly backupInstanceFamilies: pulumi.Output<string[] | undefined>;
73
83
  /**
74
84
  * Specifies a comment for the compute pool.
75
85
  */
@@ -131,6 +141,10 @@ export interface ComputePoolState {
131
141
  * (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) Number of seconds of inactivity after which you want Snowflake to automatically suspend the compute pool.
132
142
  */
133
143
  autoSuspendSecs?: pulumi.Input<number | undefined>;
144
+ /**
145
+ * Specifies an ordered list of instance families to fall back on when the primary `instanceFamily` is unavailable. The order determines the fallback priority. Valid values are (case-insensitive): `CPU_X64_XS` | `CPU_X64_S` | `CPU_X64_M` | `CPU_X64_SL` | `CPU_X64_L` | `HIGHMEM_X64_S` | `HIGHMEM_X64_M` | `HIGHMEM_X64_L` | `HIGHMEM_X64_SL` | `GPU_NV_S` | `GPU_NV_M` | `GPU_NV_L` | `GPU_NV_XS` | `GPU_NV_SM` | `GPU_NV_2M` | `GPU_NV_3M` | `GPU_NV_SL` | `GPU_GCP_NV_L4_1_24G` | `GPU_GCP_NV_L4_4_24G` | `GPU_GCP_NV_A100_8_40G` | `GEN_ARM_G1_2` | `GEN_ARM_G1_4` | `GEN_ARM_G1_8` | `GEN_ARM_G1_16` | `GEN_ARM_G1_32` | `GEN_X64_G2_2` | `GEN_X64_G2_4` | `GEN_X64_G2_8` | `GEN_X64_G2_16` | `GEN_X64_G2_32` | `MEM_X64_G2_8` | `MEM_X64_G2_32` | `MEM_X64_G2_64` | `MEM_X64_G2_96` | `MEM_X64_G2_192` | `GPU_L40S_G1_8` | `GPU_L40S_G1_16` | `GPU_L40S_G1_48` | `GPU_L40S_G1_192` | `GPU_R6K_G1_8` | `GPU_R6K_G1_16` | `GPU_R6K_G1_32` | `GPU_R6K_G1_48` | `GPU_R6K_G1_96` | `GPU_R6K_G1_192` | `GPU_A100_G1_12` | `GPU_A100_G1_48`.
146
+ */
147
+ backupInstanceFamilies?: pulumi.Input<pulumi.Input<string>[] | undefined>;
134
148
  /**
135
149
  * Specifies a comment for the compute pool.
136
150
  */
@@ -184,6 +198,10 @@ export interface ComputePoolArgs {
184
198
  * (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) Number of seconds of inactivity after which you want Snowflake to automatically suspend the compute pool.
185
199
  */
186
200
  autoSuspendSecs?: pulumi.Input<number | undefined>;
201
+ /**
202
+ * Specifies an ordered list of instance families to fall back on when the primary `instanceFamily` is unavailable. The order determines the fallback priority. Valid values are (case-insensitive): `CPU_X64_XS` | `CPU_X64_S` | `CPU_X64_M` | `CPU_X64_SL` | `CPU_X64_L` | `HIGHMEM_X64_S` | `HIGHMEM_X64_M` | `HIGHMEM_X64_L` | `HIGHMEM_X64_SL` | `GPU_NV_S` | `GPU_NV_M` | `GPU_NV_L` | `GPU_NV_XS` | `GPU_NV_SM` | `GPU_NV_2M` | `GPU_NV_3M` | `GPU_NV_SL` | `GPU_GCP_NV_L4_1_24G` | `GPU_GCP_NV_L4_4_24G` | `GPU_GCP_NV_A100_8_40G` | `GEN_ARM_G1_2` | `GEN_ARM_G1_4` | `GEN_ARM_G1_8` | `GEN_ARM_G1_16` | `GEN_ARM_G1_32` | `GEN_X64_G2_2` | `GEN_X64_G2_4` | `GEN_X64_G2_8` | `GEN_X64_G2_16` | `GEN_X64_G2_32` | `MEM_X64_G2_8` | `MEM_X64_G2_32` | `MEM_X64_G2_64` | `MEM_X64_G2_96` | `MEM_X64_G2_192` | `GPU_L40S_G1_8` | `GPU_L40S_G1_16` | `GPU_L40S_G1_48` | `GPU_L40S_G1_192` | `GPU_R6K_G1_8` | `GPU_R6K_G1_16` | `GPU_R6K_G1_32` | `GPU_R6K_G1_48` | `GPU_R6K_G1_96` | `GPU_R6K_G1_192` | `GPU_A100_G1_12` | `GPU_A100_G1_48`.
203
+ */
204
+ backupInstanceFamilies?: pulumi.Input<pulumi.Input<string>[] | undefined>;
187
205
  /**
188
206
  * Specifies a comment for the compute pool.
189
207
  */
@@ -1 +1 @@
1
- {"version":3,"file":"computePool.d.ts","sourceRoot":"","sources":["../computePool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"computePool.d.ts","sourceRoot":"","sources":["../computePool.ts"],"names":[],"mappings":"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"}
package/computePool.js CHANGED
@@ -33,6 +33,8 @@ const utilities = __importStar(require("./utilities"));
33
33
  *
34
34
  * > **Note** Managing compute pool state is limited. It is handled by `initiallySuspended`, `autoSuspendSecs`, and `autoResume` fields. The provider does not support managing the state of compute pools in Snowflake with `ALTER ... SUSPEND` and `ALTER ... RESUME`. See [Compute pool lifecycle documentation](https://docs.snowflake.com/en/developer-guide/snowpark-container-services/working-with-compute-pool#compute-pool-lifecycle) for more details.
35
35
  *
36
+ * > **Note** `backupInstanceFamilies` maps to a Snowflake [preview feature](https://docs.snowflake.com/en/release-notes/preview-features). It is available to all accounts, but its behavior may change before it reaches general availability.
37
+ *
36
38
  * Resource used to manage compute pools. For more information, check [compute pools documentation](https://docs.snowflake.com/en/sql-reference/sql/create-compute-pool). A compute pool is a collection of one or more virtual machine (VM) nodes on which Snowflake runs your Snowpark Container Services services (including job services). See [Working with compute pools](https://docs.snowflake.com/en/developer-guide/snowpark-container-services/working-with-compute-pool) developer guide for more details.
37
39
  *
38
40
  * ## Example Usage
@@ -58,6 +60,10 @@ const utilities = __importStar(require("./utilities"));
58
60
  * minNodes: 1,
59
61
  * maxNodes: 2,
60
62
  * instanceFamily: "CPU_X64_S",
63
+ * backupInstanceFamilies: [
64
+ * "CPU_X64_M",
65
+ * "CPU_X64_L",
66
+ * ],
61
67
  * autoResume: "true",
62
68
  * initiallySuspended: "true",
63
69
  * autoSuspendSecs: 1200,
@@ -105,6 +111,7 @@ class ComputePool extends pulumi.CustomResource {
105
111
  const state = argsOrState;
106
112
  resourceInputs["autoResume"] = state?.autoResume;
107
113
  resourceInputs["autoSuspendSecs"] = state?.autoSuspendSecs;
114
+ resourceInputs["backupInstanceFamilies"] = state?.backupInstanceFamilies;
108
115
  resourceInputs["comment"] = state?.comment;
109
116
  resourceInputs["describeOutputs"] = state?.describeOutputs;
110
117
  resourceInputs["forApplication"] = state?.forApplication;
@@ -129,6 +136,7 @@ class ComputePool extends pulumi.CustomResource {
129
136
  }
130
137
  resourceInputs["autoResume"] = args?.autoResume;
131
138
  resourceInputs["autoSuspendSecs"] = args?.autoSuspendSecs;
139
+ resourceInputs["backupInstanceFamilies"] = args?.backupInstanceFamilies;
132
140
  resourceInputs["comment"] = args?.comment;
133
141
  resourceInputs["forApplication"] = args?.forApplication;
134
142
  resourceInputs["initiallySuspended"] = args?.initiallySuspended;
@@ -1 +1 @@
1
- {"version":3,"file":"computePool.js","sourceRoot":"","sources":["../computePool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"computePool.js","sourceRoot":"","sources":["../computePool.ts"],"names":[],"mappings":"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"}