diff --git a/provider/cmd/pulumi-resource-snowflake/schema.json b/provider/cmd/pulumi-resource-snowflake/schema.json
index c4c99524..8d5c0044 100644
--- a/provider/cmd/pulumi-resource-snowflake/schema.json
+++ b/provider/cmd/pulumi-resource-snowflake/schema.json
@@ -2123,6 +2123,10 @@
"snowflake:index/accountGrant:AccountGrant": {
"description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as snowflake from \"@pulumi/snowflake\";\n\nconst grant = new snowflake.AccountGrant(\"grant\", {\n privilege: \"CREATE ROLE\",\n roles: [\n \"role1\",\n \"role2\",\n ],\n withGrantOption: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_snowflake as snowflake\n\ngrant = snowflake.AccountGrant(\"grant\",\n privilege=\"CREATE ROLE\",\n roles=[\n \"role1\",\n \"role2\",\n ],\n with_grant_option=False)\n```\n```csharp\nusing Pulumi;\nusing Snowflake = Pulumi.Snowflake;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var grant = new Snowflake.AccountGrant(\"grant\", new Snowflake.AccountGrantArgs\n {\n Privilege = \"CREATE ROLE\",\n Roles = \n {\n \"role1\",\n \"role2\",\n },\n WithGrantOption = false,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-snowflake/sdk/go/snowflake\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := snowflake.NewAccountGrant(ctx, \"grant\", \u0026snowflake.AccountGrantArgs{\n\t\t\tPrivilege: pulumi.String(\"CREATE ROLE\"),\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"role1\"),\n\t\t\t\tpulumi.String(\"role2\"),\n\t\t\t},\n\t\t\tWithGrantOption: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n# format is account name | | | privilege | true/false for with_grant_option\n\n```sh\n $ pulumi import snowflake:index/accountGrant:AccountGrant example 'accountName|||USAGE|true'\n```\n\n ",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the account.\n"
@@ -2140,6 +2144,10 @@
}
},
"inputProperties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the account.\n"
@@ -2159,6 +2167,10 @@
"stateInputs": {
"description": "Input properties used for looking up and filtering AccountGrant resources.\n",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the account.\n"
@@ -2472,6 +2484,10 @@
"type": "string",
"description": "The name of the database on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the database.\n"
@@ -2503,6 +2519,10 @@
"type": "string",
"description": "The name of the database on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the database.\n"
@@ -2536,6 +2556,10 @@
"type": "string",
"description": "The name of the database on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the database.\n"
@@ -3309,6 +3333,10 @@
"type": "string",
"description": "The name of the database containing the current or future external tables on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"externalTableName": {
"type": "string",
"description": "The name of the external table on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -3353,6 +3381,10 @@
"type": "string",
"description": "The name of the database containing the current or future external tables on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"externalTableName": {
"type": "string",
"description": "The name of the external table on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -3399,6 +3431,10 @@
"type": "string",
"description": "The name of the database containing the current or future external tables on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"externalTableName": {
"type": "string",
"description": "The name of the external table on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -3909,6 +3945,10 @@
"type": "string",
"description": "The name of the database containing the current or future file formats on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"fileFormatName": {
"type": "string",
"description": "The name of the file format on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -3946,6 +3986,10 @@
"type": "string",
"description": "The name of the database containing the current or future file formats on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"fileFormatName": {
"type": "string",
"description": "The name of the file format on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -3985,6 +4029,10 @@
"type": "string",
"description": "The name of the database containing the current or future file formats on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"fileFormatName": {
"type": "string",
"description": "The name of the file format on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -4229,6 +4277,10 @@
"type": "string",
"description": "The name of the database containing the current or future functions on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"functionName": {
"type": "string",
"description": "The name of the function on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -4284,6 +4336,10 @@
"type": "string",
"description": "The name of the database containing the current or future functions on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"functionName": {
"type": "string",
"description": "The name of the function on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -4341,6 +4397,10 @@
"type": "string",
"description": "The name of the database containing the current or future functions on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"functionName": {
"type": "string",
"description": "The name of the function on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -4386,6 +4446,10 @@
"snowflake:index/integrationGrant:IntegrationGrant": {
"description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as snowflake from \"@pulumi/snowflake\";\n\nconst grant = new snowflake.IntegrationGrant(\"grant\", {\n integrationName: \"integration\",\n privilege: \"USAGE\",\n roles: [\n \"role1\",\n \"role2\",\n ],\n withGrantOption: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_snowflake as snowflake\n\ngrant = snowflake.IntegrationGrant(\"grant\",\n integration_name=\"integration\",\n privilege=\"USAGE\",\n roles=[\n \"role1\",\n \"role2\",\n ],\n with_grant_option=False)\n```\n```csharp\nusing Pulumi;\nusing Snowflake = Pulumi.Snowflake;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var grant = new Snowflake.IntegrationGrant(\"grant\", new Snowflake.IntegrationGrantArgs\n {\n IntegrationName = \"integration\",\n Privilege = \"USAGE\",\n Roles = \n {\n \"role1\",\n \"role2\",\n },\n WithGrantOption = false,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-snowflake/sdk/go/snowflake\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := snowflake.NewIntegrationGrant(ctx, \"grant\", \u0026snowflake.IntegrationGrantArgs{\n\t\t\tIntegrationName: pulumi.String(\"integration\"),\n\t\t\tPrivilege: pulumi.String(\"USAGE\"),\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"role1\"),\n\t\t\t\tpulumi.String(\"role2\"),\n\t\t\t},\n\t\t\tWithGrantOption: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n# format is integration name ||| privilege | true/false for with_grant_option\n\n```sh\n $ pulumi import snowflake:index/integrationGrant:IntegrationGrant example 'intName|||USAGE|true'\n```\n\n ",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"integrationName": {
"type": "string",
"description": "Identifier for the integration; must be unique for your account.\n"
@@ -4410,6 +4474,10 @@
"integrationName"
],
"inputProperties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"integrationName": {
"type": "string",
"description": "Identifier for the integration; must be unique for your account.\n"
@@ -4436,6 +4504,10 @@
"stateInputs": {
"description": "Input properties used for looking up and filtering IntegrationGrant resources.\n",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"integrationName": {
"type": "string",
"description": "Identifier for the integration; must be unique for your account.\n"
@@ -4704,6 +4776,10 @@
"type": "string",
"description": "The name of the database containing the masking policy on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"maskingPolicyName": {
"type": "string",
"description": "The name of the masking policy on which to grant privileges immediately.\n"
@@ -4738,6 +4814,10 @@
"type": "string",
"description": "The name of the database containing the masking policy on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"maskingPolicyName": {
"type": "string",
"description": "The name of the masking policy on which to grant privileges immediately.\n"
@@ -4774,6 +4854,10 @@
"type": "string",
"description": "The name of the database containing the masking policy on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"maskingPolicyName": {
"type": "string",
"description": "The name of the masking policy on which to grant privileges immediately.\n"
@@ -4951,6 +5035,10 @@
"type": "string",
"description": "The name of the database containing the current or future materialized views on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"materializedViewName": {
"type": "string",
"description": "The name of the materialized view on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -4994,6 +5082,10 @@
"type": "string",
"description": "The name of the database containing the current or future materialized views on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"materializedViewName": {
"type": "string",
"description": "The name of the materialized view on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -5039,6 +5131,10 @@
"type": "string",
"description": "The name of the database containing the current or future materialized views on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"materializedViewName": {
"type": "string",
"description": "The name of the materialized view on which to grant privileges immediately (only valid if on_future is false).\n"
@@ -5738,6 +5834,10 @@
"type": "string",
"description": "The name of the database containing the current or future pipes on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.\n"
@@ -5775,6 +5875,10 @@
"type": "string",
"description": "The name of the database containing the current or future pipes on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.\n"
@@ -5814,6 +5918,10 @@
"type": "string",
"description": "The name of the database containing the current or future pipes on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.\n"
@@ -6014,6 +6122,10 @@
"type": "string",
"description": "The name of the database containing the current or future procedures on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.\n"
@@ -6069,6 +6181,10 @@
"type": "string",
"description": "The name of the database containing the current or future procedures on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.\n"
@@ -6126,6 +6242,10 @@
"type": "string",
"description": "The name of the database containing the current or future procedures on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.\n"
@@ -6346,6 +6466,10 @@
"snowflake:index/resourceMonitorGrant:ResourceMonitorGrant": {
"description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as snowflake from \"@pulumi/snowflake\";\n\nconst grant = new snowflake.MonitorGrant(\"grant\", {\n monitorName: \"monitor\",\n privilege: \"MODIFY\",\n roles: [\"role1\"],\n withGrantOption: false,\n});\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import snowflake:index/resourceMonitorGrant:ResourceMonitorGrant example name\n```\n\n ",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"monitorName": {
"type": "string",
"description": "Identifier for the resource monitor; must be unique for your account.\n"
@@ -6370,6 +6494,10 @@
"monitorName"
],
"inputProperties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"monitorName": {
"type": "string",
"description": "Identifier for the resource monitor; must be unique for your account.\n"
@@ -6396,6 +6524,10 @@
"stateInputs": {
"description": "Input properties used for looking up and filtering ResourceMonitorGrant resources.\n",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"monitorName": {
"type": "string",
"description": "Identifier for the resource monitor; must be unique for your account.\n"
@@ -6477,6 +6609,10 @@
"snowflake:index/roleGrants:RoleGrants": {
"description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as snowflake from \"@pulumi/snowflake\";\n\nconst role = new snowflake.Role(\"role\", {\n comment: \"for testing\",\n});\nconst user = new snowflake.User(\"user\", {\n comment: \"for testing\",\n});\nconst user2 = new snowflake.User(\"user2\", {\n comment: \"for testing\",\n});\nconst otherRole = new snowflake.Role(\"other_role\", {});\nconst grants = new snowflake.RoleGrants(\"grants\", {\n roleName: role.name,\n roles: [otherRole.name],\n users: [\n user.name,\n user2.name,\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_snowflake as snowflake\n\nrole = snowflake.Role(\"role\", comment=\"for testing\")\nuser = snowflake.User(\"user\", comment=\"for testing\")\nuser2 = snowflake.User(\"user2\", comment=\"for testing\")\nother_role = snowflake.Role(\"otherRole\")\ngrants = snowflake.RoleGrants(\"grants\",\n role_name=role.name,\n roles=[other_role.name],\n users=[\n user.name,\n user2.name,\n ])\n```\n```csharp\nusing Pulumi;\nusing Snowflake = Pulumi.Snowflake;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var role = new Snowflake.Role(\"role\", new Snowflake.RoleArgs\n {\n Comment = \"for testing\",\n });\n var user = new Snowflake.User(\"user\", new Snowflake.UserArgs\n {\n Comment = \"for testing\",\n });\n var user2 = new Snowflake.User(\"user2\", new Snowflake.UserArgs\n {\n Comment = \"for testing\",\n });\n var otherRole = new Snowflake.Role(\"otherRole\", new Snowflake.RoleArgs\n {\n });\n var grants = new Snowflake.RoleGrants(\"grants\", new Snowflake.RoleGrantsArgs\n {\n RoleName = role.Name,\n Roles = \n {\n otherRole.Name,\n },\n Users = \n {\n user.Name,\n user2.Name,\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-snowflake/sdk/go/snowflake\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trole, err := snowflake.NewRole(ctx, \"role\", \u0026snowflake.RoleArgs{\n\t\t\tComment: pulumi.String(\"for testing\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tuser, err := snowflake.NewUser(ctx, \"user\", \u0026snowflake.UserArgs{\n\t\t\tComment: pulumi.String(\"for testing\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tuser2, err := snowflake.NewUser(ctx, \"user2\", \u0026snowflake.UserArgs{\n\t\t\tComment: pulumi.String(\"for testing\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\totherRole, err := snowflake.NewRole(ctx, \"otherRole\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = snowflake.NewRoleGrants(ctx, \"grants\", \u0026snowflake.RoleGrantsArgs{\n\t\t\tRoleName: role.Name,\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\totherRole.Name,\n\t\t\t},\n\t\t\tUsers: pulumi.StringArray{\n\t\t\t\tuser.Name,\n\t\t\t\tuser2.Name,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import snowflake:index/roleGrants:RoleGrants example rolename\n```\n\n ",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"roleName": {
"type": "string",
"description": "The name of the role we are granting.\n"
@@ -6500,6 +6636,10 @@
"roleName"
],
"inputProperties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"roleName": {
"type": "string",
"description": "The name of the role we are granting.\n"
@@ -6525,6 +6665,10 @@
"stateInputs": {
"description": "Input properties used for looking up and filtering RoleGrants resources.\n",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"roleName": {
"type": "string",
"description": "The name of the role we are granting.\n"
@@ -6547,6 +6691,62 @@
"type": "object"
}
},
+ "snowflake:index/roleOwnershipGrant:RoleOwnershipGrant": {
+ "properties": {
+ "currentGrants": {
+ "type": "string",
+ "description": "Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.\n"
+ },
+ "onRoleName": {
+ "type": "string",
+ "description": "The name of the role ownership is granted on.\n"
+ },
+ "toRoleName": {
+ "type": "string",
+ "description": "The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.\n"
+ }
+ },
+ "required": [
+ "onRoleName",
+ "toRoleName"
+ ],
+ "inputProperties": {
+ "currentGrants": {
+ "type": "string",
+ "description": "Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.\n"
+ },
+ "onRoleName": {
+ "type": "string",
+ "description": "The name of the role ownership is granted on.\n"
+ },
+ "toRoleName": {
+ "type": "string",
+ "description": "The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.\n"
+ }
+ },
+ "requiredInputs": [
+ "onRoleName",
+ "toRoleName"
+ ],
+ "stateInputs": {
+ "description": "Input properties used for looking up and filtering RoleOwnershipGrant resources.\n",
+ "properties": {
+ "currentGrants": {
+ "type": "string",
+ "description": "Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.\n"
+ },
+ "onRoleName": {
+ "type": "string",
+ "description": "The name of the role ownership is granted on.\n"
+ },
+ "toRoleName": {
+ "type": "string",
+ "description": "The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.\n"
+ }
+ },
+ "type": "object"
+ }
+ },
"snowflake:index/rowAccessPolicy:RowAccessPolicy": {
"description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as snowflake from \"@pulumi/snowflake\";\n\nconst exampleRowAccessPolicy = new snowflake.RowAccessPolicy(\"example_row_access_policy\", {\n database: \"EXAMPLE_DB\",\n rowAccessExpression: \"case when current_role() in ('ANALYST') then true else false end\",\n schema: \"EXAMPLE_SCHEMA\",\n signature: {\n A: \"VARCHAR\",\n B: \"VARCHAR\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_snowflake as snowflake\n\nexample_row_access_policy = snowflake.RowAccessPolicy(\"exampleRowAccessPolicy\",\n database=\"EXAMPLE_DB\",\n row_access_expression=\"case when current_role() in ('ANALYST') then true else false end\",\n schema=\"EXAMPLE_SCHEMA\",\n signature={\n \"A\": \"VARCHAR\",\n \"B\": \"VARCHAR\",\n })\n```\n```csharp\nusing Pulumi;\nusing Snowflake = Pulumi.Snowflake;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var exampleRowAccessPolicy = new Snowflake.RowAccessPolicy(\"exampleRowAccessPolicy\", new Snowflake.RowAccessPolicyArgs\n {\n Database = \"EXAMPLE_DB\",\n RowAccessExpression = \"case when current_role() in ('ANALYST') then true else false end\",\n Schema = \"EXAMPLE_SCHEMA\",\n Signature = \n {\n { \"A\", \"VARCHAR\" },\n { \"B\", \"VARCHAR\" },\n },\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-snowflake/sdk/go/snowflake\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := snowflake.NewRowAccessPolicy(ctx, \"exampleRowAccessPolicy\", \u0026snowflake.RowAccessPolicyArgs{\n\t\t\tDatabase: pulumi.String(\"EXAMPLE_DB\"),\n\t\t\tRowAccessExpression: pulumi.String(\"case when current_role() in ('ANALYST') then true else false end\"),\n\t\t\tSchema: pulumi.String(\"EXAMPLE_SCHEMA\"),\n\t\t\tSignature: pulumi.StringMap{\n\t\t\t\t\"A\": pulumi.String(\"VARCHAR\"),\n\t\t\t\t\"B\": pulumi.String(\"VARCHAR\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n# format is database name | schema name | policy name\n\n```sh\n $ pulumi import snowflake:index/rowAccessPolicy:RowAccessPolicy example 'dbName|schemaName|policyName'\n```\n\n ",
"properties": {
@@ -6661,6 +6861,10 @@
"type": "string",
"description": "The name of the database containing the row access policy on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the row access policy.\n"
@@ -6695,6 +6899,10 @@
"type": "string",
"description": "The name of the database containing the row access policy on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the row access policy.\n"
@@ -6731,6 +6939,10 @@
"type": "string",
"description": "The name of the database containing the row access policy on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the row access policy.\n"
@@ -7119,6 +7331,10 @@
"type": "string",
"description": "The name of the database containing the schema on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.\n"
@@ -7158,6 +7374,10 @@
"type": "string",
"description": "The name of the database containing the schema on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.\n"
@@ -7199,6 +7419,10 @@
"type": "string",
"description": "The name of the database containing the schema on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.\n"
@@ -7419,6 +7643,10 @@
"type": "string",
"description": "The name of the database containing the current or future sequences on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.\n"
@@ -7456,6 +7684,10 @@
"type": "string",
"description": "The name of the database containing the current or future sequences on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.\n"
@@ -7495,6 +7727,10 @@
"type": "string",
"description": "The name of the database containing the current or future sequences on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.\n"
@@ -7789,6 +8025,10 @@
"type": "string",
"description": "The name of the database containing the current stage on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.\n"
@@ -7826,6 +8066,10 @@
"type": "string",
"description": "The name of the database containing the current stage on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.\n"
@@ -7865,6 +8109,10 @@
"type": "string",
"description": "The name of the database containing the current stage on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.\n"
@@ -8223,6 +8471,10 @@
"type": "string",
"description": "The name of the database containing the current or future streams on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.\n"
@@ -8260,6 +8512,10 @@
"type": "string",
"description": "The name of the database containing the current or future streams on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.\n"
@@ -8299,6 +8555,10 @@
"type": "string",
"description": "The name of the database containing the current or future streams on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.\n"
@@ -8517,6 +8777,10 @@
"type": "string",
"description": "The name of the database containing the current or future tables on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.\n"
@@ -8560,6 +8824,10 @@
"type": "string",
"description": "The name of the database containing the current or future tables on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.\n"
@@ -8605,6 +8873,10 @@
"type": "string",
"description": "The name of the database containing the current or future tables on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.\n"
@@ -8920,6 +9192,10 @@
"type": "string",
"description": "The name of the database containing the current or future tasks on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.\n"
@@ -8957,6 +9233,10 @@
"type": "string",
"description": "The name of the database containing the current or future tasks on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.\n"
@@ -8996,6 +9276,10 @@
"type": "string",
"description": "The name of the database containing the current or future tasks on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.\n"
@@ -9438,6 +9722,10 @@
"type": "string",
"description": "The name of the database containing the current or future views on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.\n"
@@ -9481,6 +9769,10 @@
"type": "string",
"description": "The name of the database containing the current or future views on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.\n"
@@ -9526,6 +9818,10 @@
"type": "string",
"description": "The name of the database containing the current or future views on which to grant privileges.\n"
},
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"onFuture": {
"type": "boolean",
"description": "When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.\n"
@@ -9776,6 +10072,10 @@
"snowflake:index/warehouseGrant:WarehouseGrant": {
"description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as snowflake from \"@pulumi/snowflake\";\n\nconst grant = new snowflake.WarehouseGrant(\"grant\", {\n privilege: \"MODIFY\",\n roles: [\"role1\"],\n warehouseName: \"wh\",\n withGrantOption: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_snowflake as snowflake\n\ngrant = snowflake.WarehouseGrant(\"grant\",\n privilege=\"MODIFY\",\n roles=[\"role1\"],\n warehouse_name=\"wh\",\n with_grant_option=False)\n```\n```csharp\nusing Pulumi;\nusing Snowflake = Pulumi.Snowflake;\n\nclass MyStack : Stack\n{\n public MyStack()\n {\n var grant = new Snowflake.WarehouseGrant(\"grant\", new Snowflake.WarehouseGrantArgs\n {\n Privilege = \"MODIFY\",\n Roles = \n {\n \"role1\",\n },\n WarehouseName = \"wh\",\n WithGrantOption = false,\n });\n }\n\n}\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-snowflake/sdk/go/snowflake\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := snowflake.NewWarehouseGrant(ctx, \"grant\", \u0026snowflake.WarehouseGrantArgs{\n\t\t\tPrivilege: pulumi.String(\"MODIFY\"),\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"role1\"),\n\t\t\t},\n\t\t\tWarehouseName: pulumi.String(\"wh\"),\n\t\t\tWithGrantOption: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n# format is warehouse name | | | privilege | true/false for with_grant_option\n\n```sh\n $ pulumi import snowflake:index/warehouseGrant:WarehouseGrant example 'warehouseName|||MODIFY|true'\n```\n\n ",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the warehouse.\n"
@@ -9800,6 +10100,10 @@
"warehouseName"
],
"inputProperties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the warehouse.\n"
@@ -9826,6 +10130,10 @@
"stateInputs": {
"description": "Input properties used for looking up and filtering WarehouseGrant resources.\n",
"properties": {
+ "enableMultipleGrants": {
+ "type": "boolean",
+ "description": "When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke\ngrants applied to roles and objects outside Terraform.\n"
+ },
"privilege": {
"type": "string",
"description": "The privilege to grant on the warehouse.\n"
diff --git a/provider/go.mod b/provider/go.mod
index 1550cdb2..e7c2f61f 100644
--- a/provider/go.mod
+++ b/provider/go.mod
@@ -9,7 +9,7 @@ replace (
require (
cloud.google.com/go/kms v1.4.0 // indirect
- github.com/chanzuckerberg/terraform-provider-snowflake v0.28.8
+ github.com/chanzuckerberg/terraform-provider-snowflake v0.29.0
github.com/hashicorp/terraform-plugin-sdk v1.9.1 // indirect
github.com/pulumi/pulumi-terraform-bridge/v3 v3.19.1
github.com/pulumi/pulumi/sdk/v3 v3.25.0
diff --git a/provider/go.sum b/provider/go.sum
index 552fdf83..6d6de165 100644
--- a/provider/go.sum
+++ b/provider/go.sum
@@ -402,8 +402,8 @@ github.com/chanzuckerberg/aws-oidc v0.23.1/go.mod h1:AbN6f7tGQ1aR8kJdr5Mpnyk3iab
github.com/chanzuckerberg/go-misc v0.0.0-20200814145037-61fd36eedee6/go.mod h1:5GljuH2+xw/T7ovs4sRj9WbNRrgePgom8sMzJJPlAAo=
github.com/chanzuckerberg/go-misc v0.0.0-20220309145137-a6d9e8c090d2 h1:yQ3ygwbCH0Wp0YPQSlILa21yGLD5guv4eUZrVaJ0ZPw=
github.com/chanzuckerberg/go-misc v0.0.0-20220309145137-a6d9e8c090d2/go.mod h1:josvORVy6Us8JVr+O3qkNUgFmqu2I0Goy/5ZXKK5bVQ=
-github.com/chanzuckerberg/terraform-provider-snowflake v0.28.8 h1:r0LVx9Ptukaraw4eG8BIBTeK7H6pMkeEeQLzSStr2vA=
-github.com/chanzuckerberg/terraform-provider-snowflake v0.28.8/go.mod h1:1vwIUm8Ot8i1AcxqVksNTIq4tTzp3F46qR1PrS/oX5k=
+github.com/chanzuckerberg/terraform-provider-snowflake v0.29.0 h1:SG1QXNj+YnoyPxqFGcjlJ4t3xFH7U+EiTs1GmCsR4EA=
+github.com/chanzuckerberg/terraform-provider-snowflake v0.29.0/go.mod h1:1vwIUm8Ot8i1AcxqVksNTIq4tTzp3F46qR1PrS/oX5k=
github.com/checkpoint-restore/go-criu/v4 v4.1.0/go.mod h1:xUQBLp4RLc5zJtWY++yjOoMoB5lihDt7fai+75m+rGw=
github.com/cheggaaa/pb v1.0.18/go.mod h1:pQciLPpbU0oxA0h+VJYYLxO+XeDQb5pZijXscXHm81s=
github.com/cheggaaa/pb v1.0.27 h1:wIkZHkNfC7R6GI5w7l/PdAdzXzlrbcI3p8OAlnkTsnc=
diff --git a/provider/resources.go b/provider/resources.go
index 0961adbd..59db47e4 100644
--- a/provider/resources.go
+++ b/provider/resources.go
@@ -132,6 +132,7 @@ func Provider() tfbridge.ProviderInfo {
"snowflake_oauth_integration": {Tok: makeResource(mainMod, "OauthIntegration")},
"snowflake_saml_integration": {Tok: makeResource(mainMod, "SamlIntegration")},
"snowflake_external_oauth_integration": {Tok: makeResource(mainMod, "ExternalOauthIntegration")},
+ "snowflake_role_ownership_grant": {Tok: makeResource(mainMod, "RoleOwnershipGrant")},
},
DataSources: map[string]*tfbridge.DataSourceInfo{
"snowflake_current_account": {Tok: makeDataSource(mainMod, "getCurrentAccount")},
diff --git a/sdk/dotnet/AccountGrant.cs b/sdk/dotnet/AccountGrant.cs
index 77acf33b..f69df82a 100644
--- a/sdk/dotnet/AccountGrant.cs
+++ b/sdk/dotnet/AccountGrant.cs
@@ -46,6 +46,13 @@ namespace Pulumi.Snowflake
[SnowflakeResourceType("snowflake:index/accountGrant:AccountGrant")]
public partial class AccountGrant : Pulumi.CustomResource
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The privilege to grant on the account.
///
@@ -110,6 +117,13 @@ public static AccountGrant Get(string name, Input id, AccountGrantState?
public sealed class AccountGrantArgs : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The privilege to grant on the account.
///
@@ -141,6 +155,13 @@ public AccountGrantArgs()
public sealed class AccountGrantState : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The privilege to grant on the account.
///
diff --git a/sdk/dotnet/DatabaseGrant.cs b/sdk/dotnet/DatabaseGrant.cs
index f297c71a..b532aed5 100644
--- a/sdk/dotnet/DatabaseGrant.cs
+++ b/sdk/dotnet/DatabaseGrant.cs
@@ -58,6 +58,13 @@ public partial class DatabaseGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The privilege to grant on the database.
///
@@ -134,6 +141,13 @@ public sealed class DatabaseGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The privilege to grant on the database.
///
@@ -183,6 +197,13 @@ public sealed class DatabaseGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The privilege to grant on the database.
///
diff --git a/sdk/dotnet/ExternalTableGrant.cs b/sdk/dotnet/ExternalTableGrant.cs
index e4631fe0..3bfb6af8 100644
--- a/sdk/dotnet/ExternalTableGrant.cs
+++ b/sdk/dotnet/ExternalTableGrant.cs
@@ -61,6 +61,13 @@ public partial class ExternalTableGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The name of the external table on which to grant privileges immediately (only valid if on_future is false).
///
@@ -155,6 +162,13 @@ public sealed class ExternalTableGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the external table on which to grant privileges immediately (only valid if on_future is false).
///
@@ -222,6 +236,13 @@ public sealed class ExternalTableGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the external table on which to grant privileges immediately (only valid if on_future is false).
///
diff --git a/sdk/dotnet/FileFormatGrant.cs b/sdk/dotnet/FileFormatGrant.cs
index 4cb883eb..3a57ddce 100644
--- a/sdk/dotnet/FileFormatGrant.cs
+++ b/sdk/dotnet/FileFormatGrant.cs
@@ -56,6 +56,13 @@ public partial class FileFormatGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The name of the file format on which to grant privileges immediately (only valid if on_future is false).
///
@@ -144,6 +151,13 @@ public sealed class FileFormatGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the file format on which to grant privileges immediately (only valid if on_future is false).
///
@@ -199,6 +213,13 @@ public sealed class FileFormatGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the file format on which to grant privileges immediately (only valid if on_future is false).
///
diff --git a/sdk/dotnet/FunctionGrant.cs b/sdk/dotnet/FunctionGrant.cs
index 97c0c0e7..a800cc2d 100644
--- a/sdk/dotnet/FunctionGrant.cs
+++ b/sdk/dotnet/FunctionGrant.cs
@@ -77,6 +77,13 @@ public partial class FunctionGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The name of the function on which to grant privileges immediately (only valid if on_future is false).
///
@@ -189,6 +196,13 @@ public InputList Arguments
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the function on which to grant privileges immediately (only valid if on_future is false).
///
@@ -274,6 +288,13 @@ public InputList Arguments
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the function on which to grant privileges immediately (only valid if on_future is false).
///
diff --git a/sdk/dotnet/IntegrationGrant.cs b/sdk/dotnet/IntegrationGrant.cs
index 0c796561..0d55d47a 100644
--- a/sdk/dotnet/IntegrationGrant.cs
+++ b/sdk/dotnet/IntegrationGrant.cs
@@ -47,6 +47,13 @@ namespace Pulumi.Snowflake
[SnowflakeResourceType("snowflake:index/integrationGrant:IntegrationGrant")]
public partial class IntegrationGrant : Pulumi.CustomResource
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// Identifier for the integration; must be unique for your account.
///
@@ -117,6 +124,13 @@ public static IntegrationGrant Get(string name, Input id, IntegrationGra
public sealed class IntegrationGrantArgs : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// Identifier for the integration; must be unique for your account.
///
@@ -154,6 +168,13 @@ public IntegrationGrantArgs()
public sealed class IntegrationGrantState : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// Identifier for the integration; must be unique for your account.
///
diff --git a/sdk/dotnet/MaskingPolicyGrant.cs b/sdk/dotnet/MaskingPolicyGrant.cs
index 60ed0b8a..54b5bc12 100644
--- a/sdk/dotnet/MaskingPolicyGrant.cs
+++ b/sdk/dotnet/MaskingPolicyGrant.cs
@@ -18,6 +18,13 @@ public partial class MaskingPolicyGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The name of the masking policy on which to grant privileges immediately.
///
@@ -100,6 +107,13 @@ public sealed class MaskingPolicyGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the masking policy on which to grant privileges immediately.
///
@@ -149,6 +163,13 @@ public sealed class MaskingPolicyGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the masking policy on which to grant privileges immediately.
///
diff --git a/sdk/dotnet/MaterializedViewGrant.cs b/sdk/dotnet/MaterializedViewGrant.cs
index b9efb96c..09816bef 100644
--- a/sdk/dotnet/MaterializedViewGrant.cs
+++ b/sdk/dotnet/MaterializedViewGrant.cs
@@ -61,6 +61,13 @@ public partial class MaterializedViewGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The name of the materialized view on which to grant privileges immediately (only valid if on_future is false).
///
@@ -155,6 +162,13 @@ public sealed class MaterializedViewGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the materialized view on which to grant privileges immediately (only valid if on_future is false).
///
@@ -222,6 +236,13 @@ public sealed class MaterializedViewGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the materialized view on which to grant privileges immediately (only valid if on_future is false).
///
diff --git a/sdk/dotnet/PipeGrant.cs b/sdk/dotnet/PipeGrant.cs
index c265a0fd..022a2453 100644
--- a/sdk/dotnet/PipeGrant.cs
+++ b/sdk/dotnet/PipeGrant.cs
@@ -27,6 +27,13 @@ public partial class PipeGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
///
@@ -115,6 +122,13 @@ public sealed class PipeGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
///
@@ -170,6 +184,13 @@ public sealed class PipeGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
///
diff --git a/sdk/dotnet/ProcedureGrant.cs b/sdk/dotnet/ProcedureGrant.cs
index c0ddf7a7..5d465c63 100644
--- a/sdk/dotnet/ProcedureGrant.cs
+++ b/sdk/dotnet/ProcedureGrant.cs
@@ -77,6 +77,13 @@ public partial class ProcedureGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
///
@@ -189,6 +196,13 @@ public InputList Arguments
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
///
@@ -274,6 +288,13 @@ public InputList Arguments
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
///
diff --git a/sdk/dotnet/ResourceMonitorGrant.cs b/sdk/dotnet/ResourceMonitorGrant.cs
index cfa8a538..20446203 100644
--- a/sdk/dotnet/ResourceMonitorGrant.cs
+++ b/sdk/dotnet/ResourceMonitorGrant.cs
@@ -19,6 +19,13 @@ namespace Pulumi.Snowflake
[SnowflakeResourceType("snowflake:index/resourceMonitorGrant:ResourceMonitorGrant")]
public partial class ResourceMonitorGrant : Pulumi.CustomResource
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// Identifier for the resource monitor; must be unique for your account.
///
@@ -89,6 +96,13 @@ public static ResourceMonitorGrant Get(string name, Input id, ResourceMo
public sealed class ResourceMonitorGrantArgs : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// Identifier for the resource monitor; must be unique for your account.
///
@@ -126,6 +140,13 @@ public ResourceMonitorGrantArgs()
public sealed class ResourceMonitorGrantState : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// Identifier for the resource monitor; must be unique for your account.
///
diff --git a/sdk/dotnet/RoleGrants.cs b/sdk/dotnet/RoleGrants.cs
index acbdbdbb..e37a9225 100644
--- a/sdk/dotnet/RoleGrants.cs
+++ b/sdk/dotnet/RoleGrants.cs
@@ -62,6 +62,13 @@ namespace Pulumi.Snowflake
[SnowflakeResourceType("snowflake:index/roleGrants:RoleGrants")]
public partial class RoleGrants : Pulumi.CustomResource
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The name of the role we are granting.
///
@@ -126,6 +133,13 @@ public static RoleGrants Get(string name, Input id, RoleGrantsState? sta
public sealed class RoleGrantsArgs : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the role we are granting.
///
@@ -163,6 +177,13 @@ public RoleGrantsArgs()
public sealed class RoleGrantsState : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The name of the role we are granting.
///
diff --git a/sdk/dotnet/RoleOwnershipGrant.cs b/sdk/dotnet/RoleOwnershipGrant.cs
new file mode 100644
index 00000000..e61ab779
--- /dev/null
+++ b/sdk/dotnet/RoleOwnershipGrant.cs
@@ -0,0 +1,126 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+using System;
+using System.Collections.Generic;
+using System.Collections.Immutable;
+using System.Threading.Tasks;
+using Pulumi.Serialization;
+
+namespace Pulumi.Snowflake
+{
+ [SnowflakeResourceType("snowflake:index/roleOwnershipGrant:RoleOwnershipGrant")]
+ public partial class RoleOwnershipGrant : Pulumi.CustomResource
+ {
+ ///
+ /// Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ ///
+ [Output("currentGrants")]
+ public Output CurrentGrants { get; private set; } = null!;
+
+ ///
+ /// The name of the role ownership is granted on.
+ ///
+ [Output("onRoleName")]
+ public Output OnRoleName { get; private set; } = null!;
+
+ ///
+ /// The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ ///
+ [Output("toRoleName")]
+ public Output ToRoleName { get; private set; } = null!;
+
+
+ ///
+ /// Create a RoleOwnershipGrant resource with the given unique name, arguments, and options.
+ ///
+ ///
+ /// The unique name of the resource
+ /// The arguments used to populate this resource's properties
+ /// A bag of options that control this resource's behavior
+ public RoleOwnershipGrant(string name, RoleOwnershipGrantArgs args, CustomResourceOptions? options = null)
+ : base("snowflake:index/roleOwnershipGrant:RoleOwnershipGrant", name, args ?? new RoleOwnershipGrantArgs(), MakeResourceOptions(options, ""))
+ {
+ }
+
+ private RoleOwnershipGrant(string name, Input id, RoleOwnershipGrantState? state = null, CustomResourceOptions? options = null)
+ : base("snowflake:index/roleOwnershipGrant:RoleOwnershipGrant", name, state, MakeResourceOptions(options, id))
+ {
+ }
+
+ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id)
+ {
+ var defaultOptions = new CustomResourceOptions
+ {
+ Version = Utilities.Version,
+ };
+ var merged = CustomResourceOptions.Merge(defaultOptions, options);
+ // Override the ID if one was specified for consistency with other language SDKs.
+ merged.Id = id ?? merged.Id;
+ return merged;
+ }
+ ///
+ /// Get an existing RoleOwnershipGrant resource's state with the given name, ID, and optional extra
+ /// properties used to qualify the lookup.
+ ///
+ ///
+ /// The unique name of the resulting resource.
+ /// The unique provider ID of the resource to lookup.
+ /// Any extra arguments used during the lookup.
+ /// A bag of options that control this resource's behavior
+ public static RoleOwnershipGrant Get(string name, Input id, RoleOwnershipGrantState? state = null, CustomResourceOptions? options = null)
+ {
+ return new RoleOwnershipGrant(name, id, state, options);
+ }
+ }
+
+ public sealed class RoleOwnershipGrantArgs : Pulumi.ResourceArgs
+ {
+ ///
+ /// Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ ///
+ [Input("currentGrants")]
+ public Input? CurrentGrants { get; set; }
+
+ ///
+ /// The name of the role ownership is granted on.
+ ///
+ [Input("onRoleName", required: true)]
+ public Input OnRoleName { get; set; } = null!;
+
+ ///
+ /// The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ ///
+ [Input("toRoleName", required: true)]
+ public Input ToRoleName { get; set; } = null!;
+
+ public RoleOwnershipGrantArgs()
+ {
+ }
+ }
+
+ public sealed class RoleOwnershipGrantState : Pulumi.ResourceArgs
+ {
+ ///
+ /// Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ ///
+ [Input("currentGrants")]
+ public Input? CurrentGrants { get; set; }
+
+ ///
+ /// The name of the role ownership is granted on.
+ ///
+ [Input("onRoleName")]
+ public Input? OnRoleName { get; set; }
+
+ ///
+ /// The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ ///
+ [Input("toRoleName")]
+ public Input? ToRoleName { get; set; }
+
+ public RoleOwnershipGrantState()
+ {
+ }
+ }
+}
diff --git a/sdk/dotnet/RowAccessPolicyGrant.cs b/sdk/dotnet/RowAccessPolicyGrant.cs
index 036b66b9..0e2aaefa 100644
--- a/sdk/dotnet/RowAccessPolicyGrant.cs
+++ b/sdk/dotnet/RowAccessPolicyGrant.cs
@@ -55,6 +55,13 @@ public partial class RowAccessPolicyGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The privilege to grant on the row access policy.
///
@@ -137,6 +144,13 @@ public sealed class RowAccessPolicyGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The privilege to grant on the row access policy.
///
@@ -186,6 +200,13 @@ public sealed class RowAccessPolicyGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The privilege to grant on the row access policy.
///
diff --git a/sdk/dotnet/SchemaGrant.cs b/sdk/dotnet/SchemaGrant.cs
index fdfffb4d..221b2084 100644
--- a/sdk/dotnet/SchemaGrant.cs
+++ b/sdk/dotnet/SchemaGrant.cs
@@ -60,6 +60,13 @@ public partial class SchemaGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
///
@@ -149,6 +156,13 @@ public sealed class SchemaGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
///
@@ -211,6 +225,13 @@ public sealed class SchemaGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
///
diff --git a/sdk/dotnet/SequenceGrant.cs b/sdk/dotnet/SequenceGrant.cs
index 881eb0e8..7049c674 100644
--- a/sdk/dotnet/SequenceGrant.cs
+++ b/sdk/dotnet/SequenceGrant.cs
@@ -56,6 +56,13 @@ public partial class SequenceGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
///
@@ -144,6 +151,13 @@ public sealed class SequenceGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
///
@@ -199,6 +213,13 @@ public sealed class SequenceGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
///
diff --git a/sdk/dotnet/StageGrant.cs b/sdk/dotnet/StageGrant.cs
index 7a53ad77..f137bc36 100644
--- a/sdk/dotnet/StageGrant.cs
+++ b/sdk/dotnet/StageGrant.cs
@@ -27,6 +27,13 @@ public partial class StageGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
///
@@ -115,6 +122,13 @@ public sealed class StageGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
///
@@ -170,6 +184,13 @@ public sealed class StageGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
///
diff --git a/sdk/dotnet/StreamGrant.cs b/sdk/dotnet/StreamGrant.cs
index 77e7aaa9..8a1e0226 100644
--- a/sdk/dotnet/StreamGrant.cs
+++ b/sdk/dotnet/StreamGrant.cs
@@ -56,6 +56,13 @@ public partial class StreamGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
///
@@ -144,6 +151,13 @@ public sealed class StreamGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
///
@@ -199,6 +213,13 @@ public sealed class StreamGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
///
diff --git a/sdk/dotnet/TableGrant.cs b/sdk/dotnet/TableGrant.cs
index 07604cdc..3c1c4970 100644
--- a/sdk/dotnet/TableGrant.cs
+++ b/sdk/dotnet/TableGrant.cs
@@ -59,6 +59,13 @@ public partial class TableGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
///
@@ -153,6 +160,13 @@ public sealed class TableGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
///
@@ -220,6 +234,13 @@ public sealed class TableGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
///
diff --git a/sdk/dotnet/TaskGrant.cs b/sdk/dotnet/TaskGrant.cs
index 0f9f8758..b17bb62f 100644
--- a/sdk/dotnet/TaskGrant.cs
+++ b/sdk/dotnet/TaskGrant.cs
@@ -56,6 +56,13 @@ public partial class TaskGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
///
@@ -144,6 +151,13 @@ public sealed class TaskGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
///
@@ -199,6 +213,13 @@ public sealed class TaskGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
///
diff --git a/sdk/dotnet/ViewGrant.cs b/sdk/dotnet/ViewGrant.cs
index e8de4cae..9de5222a 100644
--- a/sdk/dotnet/ViewGrant.cs
+++ b/sdk/dotnet/ViewGrant.cs
@@ -61,6 +61,13 @@ public partial class ViewGrant : Pulumi.CustomResource
[Output("databaseName")]
public Output DatabaseName { get; private set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
///
@@ -155,6 +162,13 @@ public sealed class ViewGrantArgs : Pulumi.ResourceArgs
[Input("databaseName", required: true)]
public Input DatabaseName { get; set; } = null!;
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
///
@@ -222,6 +236,13 @@ public sealed class ViewGrantState : Pulumi.ResourceArgs
[Input("databaseName")]
public Input? DatabaseName { get; set; }
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
///
diff --git a/sdk/dotnet/WarehouseGrant.cs b/sdk/dotnet/WarehouseGrant.cs
index d13c8211..a668af8d 100644
--- a/sdk/dotnet/WarehouseGrant.cs
+++ b/sdk/dotnet/WarehouseGrant.cs
@@ -46,6 +46,13 @@ namespace Pulumi.Snowflake
[SnowflakeResourceType("snowflake:index/warehouseGrant:WarehouseGrant")]
public partial class WarehouseGrant : Pulumi.CustomResource
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Output("enableMultipleGrants")]
+ public Output EnableMultipleGrants { get; private set; } = null!;
+
///
/// The privilege to grant on the warehouse.
///
@@ -116,6 +123,13 @@ public static WarehouseGrant Get(string name, Input id, WarehouseGrantSt
public sealed class WarehouseGrantArgs : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The privilege to grant on the warehouse.
///
@@ -153,6 +167,13 @@ public WarehouseGrantArgs()
public sealed class WarehouseGrantState : Pulumi.ResourceArgs
{
+ ///
+ /// When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ /// grants applied to roles and objects outside Terraform.
+ ///
+ [Input("enableMultipleGrants")]
+ public Input? EnableMultipleGrants { get; set; }
+
///
/// The privilege to grant on the warehouse.
///
diff --git a/sdk/go/snowflake/accountGrant.go b/sdk/go/snowflake/accountGrant.go
index c68c6dc6..73ea6d8d 100644
--- a/sdk/go/snowflake/accountGrant.go
+++ b/sdk/go/snowflake/accountGrant.go
@@ -48,6 +48,9 @@ import (
type AccountGrant struct {
pulumi.CustomResourceState
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The privilege to grant on the account.
Privilege pulumi.StringPtrOutput `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -85,6 +88,9 @@ func GetAccountGrant(ctx *pulumi.Context,
// Input properties used for looking up and filtering AccountGrant resources.
type accountGrantState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The privilege to grant on the account.
Privilege *string `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -94,6 +100,9 @@ type accountGrantState struct {
}
type AccountGrantState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The privilege to grant on the account.
Privilege pulumi.StringPtrInput
// Grants privilege to these roles.
@@ -107,6 +116,9 @@ func (AccountGrantState) ElementType() reflect.Type {
}
type accountGrantArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The privilege to grant on the account.
Privilege *string `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -117,6 +129,9 @@ type accountGrantArgs struct {
// The set of arguments for constructing a AccountGrant resource.
type AccountGrantArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The privilege to grant on the account.
Privilege pulumi.StringPtrInput
// Grants privilege to these roles.
diff --git a/sdk/go/snowflake/databaseGrant.go b/sdk/go/snowflake/databaseGrant.go
index f8d04229..9648ac5a 100644
--- a/sdk/go/snowflake/databaseGrant.go
+++ b/sdk/go/snowflake/databaseGrant.go
@@ -56,6 +56,9 @@ type DatabaseGrant struct {
// The name of the database on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The privilege to grant on the database.
Privilege pulumi.StringPtrOutput `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -100,6 +103,9 @@ func GetDatabaseGrant(ctx *pulumi.Context,
type databaseGrantState struct {
// The name of the database on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The privilege to grant on the database.
Privilege *string `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -113,6 +119,9 @@ type databaseGrantState struct {
type DatabaseGrantState struct {
// The name of the database on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The privilege to grant on the database.
Privilege pulumi.StringPtrInput
// Grants privilege to these roles.
@@ -130,6 +139,9 @@ func (DatabaseGrantState) ElementType() reflect.Type {
type databaseGrantArgs struct {
// The name of the database on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The privilege to grant on the database.
Privilege *string `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -144,6 +156,9 @@ type databaseGrantArgs struct {
type DatabaseGrantArgs struct {
// The name of the database on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The privilege to grant on the database.
Privilege pulumi.StringPtrInput
// Grants privilege to these roles.
diff --git a/sdk/go/snowflake/externalTableGrant.go b/sdk/go/snowflake/externalTableGrant.go
index 05bf555b..58464ade 100644
--- a/sdk/go/snowflake/externalTableGrant.go
+++ b/sdk/go/snowflake/externalTableGrant.go
@@ -59,6 +59,9 @@ type ExternalTableGrant struct {
// The name of the database containing the current or future external tables on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The name of the external table on which to grant privileges immediately (only valid if onFuture is false).
ExternalTableName pulumi.StringPtrOutput `pulumi:"externalTableName"`
// When this is set to true and a schema*name is provided, apply this grant on all future external tables in the given schema. When this is true and no schema*name is provided apply this grant on all future external tables in the given database. The external*table*name and shares fields must be unset in order to use on_future.
@@ -112,6 +115,9 @@ func GetExternalTableGrant(ctx *pulumi.Context,
type externalTableGrantState struct {
// The name of the database containing the current or future external tables on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the external table on which to grant privileges immediately (only valid if onFuture is false).
ExternalTableName *string `pulumi:"externalTableName"`
// When this is set to true and a schema*name is provided, apply this grant on all future external tables in the given schema. When this is true and no schema*name is provided apply this grant on all future external tables in the given database. The external*table*name and shares fields must be unset in order to use on_future.
@@ -131,6 +137,9 @@ type externalTableGrantState struct {
type ExternalTableGrantState struct {
// The name of the database containing the current or future external tables on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the external table on which to grant privileges immediately (only valid if onFuture is false).
ExternalTableName pulumi.StringPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future external tables in the given schema. When this is true and no schema*name is provided apply this grant on all future external tables in the given database. The external*table*name and shares fields must be unset in order to use on_future.
@@ -154,6 +163,9 @@ func (ExternalTableGrantState) ElementType() reflect.Type {
type externalTableGrantArgs struct {
// The name of the database containing the current or future external tables on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the external table on which to grant privileges immediately (only valid if onFuture is false).
ExternalTableName *string `pulumi:"externalTableName"`
// When this is set to true and a schema*name is provided, apply this grant on all future external tables in the given schema. When this is true and no schema*name is provided apply this grant on all future external tables in the given database. The external*table*name and shares fields must be unset in order to use on_future.
@@ -174,6 +186,9 @@ type externalTableGrantArgs struct {
type ExternalTableGrantArgs struct {
// The name of the database containing the current or future external tables on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the external table on which to grant privileges immediately (only valid if onFuture is false).
ExternalTableName pulumi.StringPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future external tables in the given schema. When this is true and no schema*name is provided apply this grant on all future external tables in the given database. The external*table*name and shares fields must be unset in order to use on_future.
diff --git a/sdk/go/snowflake/fileFormatGrant.go b/sdk/go/snowflake/fileFormatGrant.go
index ebb3442b..311403fd 100644
--- a/sdk/go/snowflake/fileFormatGrant.go
+++ b/sdk/go/snowflake/fileFormatGrant.go
@@ -55,6 +55,9 @@ type FileFormatGrant struct {
// The name of the database containing the current or future file formats on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The name of the file format on which to grant privileges immediately (only valid if onFuture is false).
FileFormatName pulumi.StringPtrOutput `pulumi:"fileFormatName"`
// When this is set to true and a schema*name is provided, apply this grant on all future file formats in the given schema. When this is true and no schema*name is provided apply this grant on all future file formats in the given database. The file*format*name field must be unset in order to use on_future.
@@ -106,6 +109,9 @@ func GetFileFormatGrant(ctx *pulumi.Context,
type fileFormatGrantState struct {
// The name of the database containing the current or future file formats on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the file format on which to grant privileges immediately (only valid if onFuture is false).
FileFormatName *string `pulumi:"fileFormatName"`
// When this is set to true and a schema*name is provided, apply this grant on all future file formats in the given schema. When this is true and no schema*name is provided apply this grant on all future file formats in the given database. The file*format*name field must be unset in order to use on_future.
@@ -123,6 +129,9 @@ type fileFormatGrantState struct {
type FileFormatGrantState struct {
// The name of the database containing the current or future file formats on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the file format on which to grant privileges immediately (only valid if onFuture is false).
FileFormatName pulumi.StringPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future file formats in the given schema. When this is true and no schema*name is provided apply this grant on all future file formats in the given database. The file*format*name field must be unset in order to use on_future.
@@ -144,6 +153,9 @@ func (FileFormatGrantState) ElementType() reflect.Type {
type fileFormatGrantArgs struct {
// The name of the database containing the current or future file formats on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the file format on which to grant privileges immediately (only valid if onFuture is false).
FileFormatName *string `pulumi:"fileFormatName"`
// When this is set to true and a schema*name is provided, apply this grant on all future file formats in the given schema. When this is true and no schema*name is provided apply this grant on all future file formats in the given database. The file*format*name field must be unset in order to use on_future.
@@ -162,6 +174,9 @@ type fileFormatGrantArgs struct {
type FileFormatGrantArgs struct {
// The name of the database containing the current or future file formats on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the file format on which to grant privileges immediately (only valid if onFuture is false).
FileFormatName pulumi.StringPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future file formats in the given schema. When this is true and no schema*name is provided apply this grant on all future file formats in the given database. The file*format*name field must be unset in order to use on_future.
diff --git a/sdk/go/snowflake/functionGrant.go b/sdk/go/snowflake/functionGrant.go
index 3923bd71..df87e98a 100644
--- a/sdk/go/snowflake/functionGrant.go
+++ b/sdk/go/snowflake/functionGrant.go
@@ -72,6 +72,9 @@ type FunctionGrant struct {
Arguments FunctionGrantArgumentArrayOutput `pulumi:"arguments"`
// The name of the database containing the current or future functions on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The name of the function on which to grant privileges immediately (only valid if onFuture is false).
FunctionName pulumi.StringPtrOutput `pulumi:"functionName"`
// When this is set to true and a schema*name is provided, apply this grant on all future functions in the given schema. When this is true and no schema*name is provided apply this grant on all future functions in the given database. The function*name, arguments, return*type, and shares fields must be unset in order to use on_future.
@@ -129,6 +132,9 @@ type functionGrantState struct {
Arguments []FunctionGrantArgument `pulumi:"arguments"`
// The name of the database containing the current or future functions on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the function on which to grant privileges immediately (only valid if onFuture is false).
FunctionName *string `pulumi:"functionName"`
// When this is set to true and a schema*name is provided, apply this grant on all future functions in the given schema. When this is true and no schema*name is provided apply this grant on all future functions in the given database. The function*name, arguments, return*type, and shares fields must be unset in order to use on_future.
@@ -152,6 +158,9 @@ type FunctionGrantState struct {
Arguments FunctionGrantArgumentArrayInput
// The name of the database containing the current or future functions on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the function on which to grant privileges immediately (only valid if onFuture is false).
FunctionName pulumi.StringPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future functions in the given schema. When this is true and no schema*name is provided apply this grant on all future functions in the given database. The function*name, arguments, return*type, and shares fields must be unset in order to use on_future.
@@ -179,6 +188,9 @@ type functionGrantArgs struct {
Arguments []FunctionGrantArgument `pulumi:"arguments"`
// The name of the database containing the current or future functions on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the function on which to grant privileges immediately (only valid if onFuture is false).
FunctionName *string `pulumi:"functionName"`
// When this is set to true and a schema*name is provided, apply this grant on all future functions in the given schema. When this is true and no schema*name is provided apply this grant on all future functions in the given database. The function*name, arguments, return*type, and shares fields must be unset in order to use on_future.
@@ -203,6 +215,9 @@ type FunctionGrantArgs struct {
Arguments FunctionGrantArgumentArrayInput
// The name of the database containing the current or future functions on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the function on which to grant privileges immediately (only valid if onFuture is false).
FunctionName pulumi.StringPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future functions in the given schema. When this is true and no schema*name is provided apply this grant on all future functions in the given database. The function*name, arguments, return*type, and shares fields must be unset in order to use on_future.
diff --git a/sdk/go/snowflake/init.go b/sdk/go/snowflake/init.go
index 792a7130..a321ea46 100644
--- a/sdk/go/snowflake/init.go
+++ b/sdk/go/snowflake/init.go
@@ -80,6 +80,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi
r = &Role{}
case "snowflake:index/roleGrants:RoleGrants":
r = &RoleGrants{}
+ case "snowflake:index/roleOwnershipGrant:RoleOwnershipGrant":
+ r = &RoleOwnershipGrant{}
case "snowflake:index/rowAccessPolicy:RowAccessPolicy":
r = &RowAccessPolicy{}
case "snowflake:index/rowAccessPolicyGrant:RowAccessPolicyGrant":
@@ -311,6 +313,11 @@ func init() {
"index/roleGrants",
&module{version},
)
+ pulumi.RegisterResourceModule(
+ "snowflake",
+ "index/roleOwnershipGrant",
+ &module{version},
+ )
pulumi.RegisterResourceModule(
"snowflake",
"index/rowAccessPolicy",
diff --git a/sdk/go/snowflake/integrationGrant.go b/sdk/go/snowflake/integrationGrant.go
index 68cf8d53..f691dbbd 100644
--- a/sdk/go/snowflake/integrationGrant.go
+++ b/sdk/go/snowflake/integrationGrant.go
@@ -50,6 +50,9 @@ import (
type IntegrationGrant struct {
pulumi.CustomResourceState
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// Identifier for the integration; must be unique for your account.
IntegrationName pulumi.StringOutput `pulumi:"integrationName"`
// The privilege to grant on the integration.
@@ -92,6 +95,9 @@ func GetIntegrationGrant(ctx *pulumi.Context,
// Input properties used for looking up and filtering IntegrationGrant resources.
type integrationGrantState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// Identifier for the integration; must be unique for your account.
IntegrationName *string `pulumi:"integrationName"`
// The privilege to grant on the integration.
@@ -103,6 +109,9 @@ type integrationGrantState struct {
}
type IntegrationGrantState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// Identifier for the integration; must be unique for your account.
IntegrationName pulumi.StringPtrInput
// The privilege to grant on the integration.
@@ -118,6 +127,9 @@ func (IntegrationGrantState) ElementType() reflect.Type {
}
type integrationGrantArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// Identifier for the integration; must be unique for your account.
IntegrationName string `pulumi:"integrationName"`
// The privilege to grant on the integration.
@@ -130,6 +142,9 @@ type integrationGrantArgs struct {
// The set of arguments for constructing a IntegrationGrant resource.
type IntegrationGrantArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// Identifier for the integration; must be unique for your account.
IntegrationName pulumi.StringInput
// The privilege to grant on the integration.
diff --git a/sdk/go/snowflake/maskingPolicyGrant.go b/sdk/go/snowflake/maskingPolicyGrant.go
index 84b20a2a..fbfaf483 100644
--- a/sdk/go/snowflake/maskingPolicyGrant.go
+++ b/sdk/go/snowflake/maskingPolicyGrant.go
@@ -16,6 +16,9 @@ type MaskingPolicyGrant struct {
// The name of the database containing the masking policy on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The name of the masking policy on which to grant privileges immediately.
MaskingPolicyName pulumi.StringOutput `pulumi:"maskingPolicyName"`
// The privilege to grant on the masking policy.
@@ -68,6 +71,9 @@ func GetMaskingPolicyGrant(ctx *pulumi.Context,
type maskingPolicyGrantState struct {
// The name of the database containing the masking policy on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the masking policy on which to grant privileges immediately.
MaskingPolicyName *string `pulumi:"maskingPolicyName"`
// The privilege to grant on the masking policy.
@@ -83,6 +89,9 @@ type maskingPolicyGrantState struct {
type MaskingPolicyGrantState struct {
// The name of the database containing the masking policy on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the masking policy on which to grant privileges immediately.
MaskingPolicyName pulumi.StringPtrInput
// The privilege to grant on the masking policy.
@@ -102,6 +111,9 @@ func (MaskingPolicyGrantState) ElementType() reflect.Type {
type maskingPolicyGrantArgs struct {
// The name of the database containing the masking policy on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the masking policy on which to grant privileges immediately.
MaskingPolicyName string `pulumi:"maskingPolicyName"`
// The privilege to grant on the masking policy.
@@ -118,6 +130,9 @@ type maskingPolicyGrantArgs struct {
type MaskingPolicyGrantArgs struct {
// The name of the database containing the masking policy on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the masking policy on which to grant privileges immediately.
MaskingPolicyName pulumi.StringInput
// The privilege to grant on the masking policy.
diff --git a/sdk/go/snowflake/materializedViewGrant.go b/sdk/go/snowflake/materializedViewGrant.go
index 26c377bf..54dd4c11 100644
--- a/sdk/go/snowflake/materializedViewGrant.go
+++ b/sdk/go/snowflake/materializedViewGrant.go
@@ -59,6 +59,9 @@ type MaterializedViewGrant struct {
// The name of the database containing the current or future materialized views on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The name of the materialized view on which to grant privileges immediately (only valid if onFuture is false).
MaterializedViewName pulumi.StringPtrOutput `pulumi:"materializedViewName"`
// When this is set to true and a schema*name is provided, apply this grant on all future materialized views in the given schema. When this is true and no schema*name is provided apply this grant on all future materialized views in the given database. The materialized*view*name and shares fields must be unset in order to use on_future.
@@ -109,6 +112,9 @@ func GetMaterializedViewGrant(ctx *pulumi.Context,
type materializedViewGrantState struct {
// The name of the database containing the current or future materialized views on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the materialized view on which to grant privileges immediately (only valid if onFuture is false).
MaterializedViewName *string `pulumi:"materializedViewName"`
// When this is set to true and a schema*name is provided, apply this grant on all future materialized views in the given schema. When this is true and no schema*name is provided apply this grant on all future materialized views in the given database. The materialized*view*name and shares fields must be unset in order to use on_future.
@@ -128,6 +134,9 @@ type materializedViewGrantState struct {
type MaterializedViewGrantState struct {
// The name of the database containing the current or future materialized views on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the materialized view on which to grant privileges immediately (only valid if onFuture is false).
MaterializedViewName pulumi.StringPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future materialized views in the given schema. When this is true and no schema*name is provided apply this grant on all future materialized views in the given database. The materialized*view*name and shares fields must be unset in order to use on_future.
@@ -151,6 +160,9 @@ func (MaterializedViewGrantState) ElementType() reflect.Type {
type materializedViewGrantArgs struct {
// The name of the database containing the current or future materialized views on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the materialized view on which to grant privileges immediately (only valid if onFuture is false).
MaterializedViewName *string `pulumi:"materializedViewName"`
// When this is set to true and a schema*name is provided, apply this grant on all future materialized views in the given schema. When this is true and no schema*name is provided apply this grant on all future materialized views in the given database. The materialized*view*name and shares fields must be unset in order to use on_future.
@@ -171,6 +183,9 @@ type materializedViewGrantArgs struct {
type MaterializedViewGrantArgs struct {
// The name of the database containing the current or future materialized views on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the materialized view on which to grant privileges immediately (only valid if onFuture is false).
MaterializedViewName pulumi.StringPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future materialized views in the given schema. When this is true and no schema*name is provided apply this grant on all future materialized views in the given database. The materialized*view*name and shares fields must be unset in order to use on_future.
diff --git a/sdk/go/snowflake/pipeGrant.go b/sdk/go/snowflake/pipeGrant.go
index b03b82ca..898c9568 100644
--- a/sdk/go/snowflake/pipeGrant.go
+++ b/sdk/go/snowflake/pipeGrant.go
@@ -23,6 +23,9 @@ type PipeGrant struct {
// The name of the database containing the current or future pipes on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrOutput `pulumi:"onFuture"`
// The name of the pipe on which to grant privileges immediately (only valid if onFuture is false).
@@ -74,6 +77,9 @@ func GetPipeGrant(ctx *pulumi.Context,
type pipeGrantState struct {
// The name of the database containing the current or future pipes on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The name of the pipe on which to grant privileges immediately (only valid if onFuture is false).
@@ -91,6 +97,9 @@ type pipeGrantState struct {
type PipeGrantState struct {
// The name of the database containing the current or future pipes on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The name of the pipe on which to grant privileges immediately (only valid if onFuture is false).
@@ -112,6 +121,9 @@ func (PipeGrantState) ElementType() reflect.Type {
type pipeGrantArgs struct {
// The name of the database containing the current or future pipes on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The name of the pipe on which to grant privileges immediately (only valid if onFuture is false).
@@ -130,6 +142,9 @@ type pipeGrantArgs struct {
type PipeGrantArgs struct {
// The name of the database containing the current or future pipes on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The name of the pipe on which to grant privileges immediately (only valid if onFuture is false).
diff --git a/sdk/go/snowflake/procedureGrant.go b/sdk/go/snowflake/procedureGrant.go
index d5ecd1a1..a363318b 100644
--- a/sdk/go/snowflake/procedureGrant.go
+++ b/sdk/go/snowflake/procedureGrant.go
@@ -72,6 +72,9 @@ type ProcedureGrant struct {
Arguments ProcedureGrantArgumentArrayOutput `pulumi:"arguments"`
// The name of the database containing the current or future procedures on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrOutput `pulumi:"onFuture"`
// The privilege to grant on the current or future procedure.
@@ -129,6 +132,9 @@ type procedureGrantState struct {
Arguments []ProcedureGrantArgument `pulumi:"arguments"`
// The name of the database containing the current or future procedures on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future procedure.
@@ -152,6 +158,9 @@ type ProcedureGrantState struct {
Arguments ProcedureGrantArgumentArrayInput
// The name of the database containing the current or future procedures on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future procedure.
@@ -179,6 +188,9 @@ type procedureGrantArgs struct {
Arguments []ProcedureGrantArgument `pulumi:"arguments"`
// The name of the database containing the current or future procedures on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future procedure.
@@ -203,6 +215,9 @@ type ProcedureGrantArgs struct {
Arguments ProcedureGrantArgumentArrayInput
// The name of the database containing the current or future procedures on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future procedure.
diff --git a/sdk/go/snowflake/resourceMonitorGrant.go b/sdk/go/snowflake/resourceMonitorGrant.go
index 49d44f0d..0af2a154 100644
--- a/sdk/go/snowflake/resourceMonitorGrant.go
+++ b/sdk/go/snowflake/resourceMonitorGrant.go
@@ -19,6 +19,9 @@ import (
type ResourceMonitorGrant struct {
pulumi.CustomResourceState
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// Identifier for the resource monitor; must be unique for your account.
MonitorName pulumi.StringOutput `pulumi:"monitorName"`
// The privilege to grant on the resource monitor.
@@ -61,6 +64,9 @@ func GetResourceMonitorGrant(ctx *pulumi.Context,
// Input properties used for looking up and filtering ResourceMonitorGrant resources.
type resourceMonitorGrantState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// Identifier for the resource monitor; must be unique for your account.
MonitorName *string `pulumi:"monitorName"`
// The privilege to grant on the resource monitor.
@@ -72,6 +78,9 @@ type resourceMonitorGrantState struct {
}
type ResourceMonitorGrantState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// Identifier for the resource monitor; must be unique for your account.
MonitorName pulumi.StringPtrInput
// The privilege to grant on the resource monitor.
@@ -87,6 +96,9 @@ func (ResourceMonitorGrantState) ElementType() reflect.Type {
}
type resourceMonitorGrantArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// Identifier for the resource monitor; must be unique for your account.
MonitorName string `pulumi:"monitorName"`
// The privilege to grant on the resource monitor.
@@ -99,6 +111,9 @@ type resourceMonitorGrantArgs struct {
// The set of arguments for constructing a ResourceMonitorGrant resource.
type ResourceMonitorGrantArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// Identifier for the resource monitor; must be unique for your account.
MonitorName pulumi.StringInput
// The privilege to grant on the resource monitor.
diff --git a/sdk/go/snowflake/roleGrants.go b/sdk/go/snowflake/roleGrants.go
index a7c98645..12e53a8e 100644
--- a/sdk/go/snowflake/roleGrants.go
+++ b/sdk/go/snowflake/roleGrants.go
@@ -71,6 +71,9 @@ import (
type RoleGrants struct {
pulumi.CustomResourceState
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The name of the role we are granting.
RoleName pulumi.StringOutput `pulumi:"roleName"`
// Grants role to this specified role.
@@ -111,6 +114,9 @@ func GetRoleGrants(ctx *pulumi.Context,
// Input properties used for looking up and filtering RoleGrants resources.
type roleGrantsState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the role we are granting.
RoleName *string `pulumi:"roleName"`
// Grants role to this specified role.
@@ -120,6 +126,9 @@ type roleGrantsState struct {
}
type RoleGrantsState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the role we are granting.
RoleName pulumi.StringPtrInput
// Grants role to this specified role.
@@ -133,6 +142,9 @@ func (RoleGrantsState) ElementType() reflect.Type {
}
type roleGrantsArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The name of the role we are granting.
RoleName string `pulumi:"roleName"`
// Grants role to this specified role.
@@ -143,6 +155,9 @@ type roleGrantsArgs struct {
// The set of arguments for constructing a RoleGrants resource.
type RoleGrantsArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The name of the role we are granting.
RoleName pulumi.StringInput
// Grants role to this specified role.
diff --git a/sdk/go/snowflake/roleOwnershipGrant.go b/sdk/go/snowflake/roleOwnershipGrant.go
new file mode 100644
index 00000000..53f6e51a
--- /dev/null
+++ b/sdk/go/snowflake/roleOwnershipGrant.go
@@ -0,0 +1,234 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+package snowflake
+
+import (
+ "context"
+ "reflect"
+
+ "github.com/pkg/errors"
+ "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
+)
+
+type RoleOwnershipGrant struct {
+ pulumi.CustomResourceState
+
+ // Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ CurrentGrants pulumi.StringPtrOutput `pulumi:"currentGrants"`
+ // The name of the role ownership is granted on.
+ OnRoleName pulumi.StringOutput `pulumi:"onRoleName"`
+ // The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ ToRoleName pulumi.StringOutput `pulumi:"toRoleName"`
+}
+
+// NewRoleOwnershipGrant registers a new resource with the given unique name, arguments, and options.
+func NewRoleOwnershipGrant(ctx *pulumi.Context,
+ name string, args *RoleOwnershipGrantArgs, opts ...pulumi.ResourceOption) (*RoleOwnershipGrant, error) {
+ if args == nil {
+ return nil, errors.New("missing one or more required arguments")
+ }
+
+ if args.OnRoleName == nil {
+ return nil, errors.New("invalid value for required argument 'OnRoleName'")
+ }
+ if args.ToRoleName == nil {
+ return nil, errors.New("invalid value for required argument 'ToRoleName'")
+ }
+ var resource RoleOwnershipGrant
+ err := ctx.RegisterResource("snowflake:index/roleOwnershipGrant:RoleOwnershipGrant", name, args, &resource, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return &resource, nil
+}
+
+// GetRoleOwnershipGrant gets an existing RoleOwnershipGrant resource's state with the given name, ID, and optional
+// state properties that are used to uniquely qualify the lookup (nil if not required).
+func GetRoleOwnershipGrant(ctx *pulumi.Context,
+ name string, id pulumi.IDInput, state *RoleOwnershipGrantState, opts ...pulumi.ResourceOption) (*RoleOwnershipGrant, error) {
+ var resource RoleOwnershipGrant
+ err := ctx.ReadResource("snowflake:index/roleOwnershipGrant:RoleOwnershipGrant", name, id, state, &resource, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return &resource, nil
+}
+
+// Input properties used for looking up and filtering RoleOwnershipGrant resources.
+type roleOwnershipGrantState struct {
+ // Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ CurrentGrants *string `pulumi:"currentGrants"`
+ // The name of the role ownership is granted on.
+ OnRoleName *string `pulumi:"onRoleName"`
+ // The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ ToRoleName *string `pulumi:"toRoleName"`
+}
+
+type RoleOwnershipGrantState struct {
+ // Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ CurrentGrants pulumi.StringPtrInput
+ // The name of the role ownership is granted on.
+ OnRoleName pulumi.StringPtrInput
+ // The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ ToRoleName pulumi.StringPtrInput
+}
+
+func (RoleOwnershipGrantState) ElementType() reflect.Type {
+ return reflect.TypeOf((*roleOwnershipGrantState)(nil)).Elem()
+}
+
+type roleOwnershipGrantArgs struct {
+ // Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ CurrentGrants *string `pulumi:"currentGrants"`
+ // The name of the role ownership is granted on.
+ OnRoleName string `pulumi:"onRoleName"`
+ // The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ ToRoleName string `pulumi:"toRoleName"`
+}
+
+// The set of arguments for constructing a RoleOwnershipGrant resource.
+type RoleOwnershipGrantArgs struct {
+ // Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ CurrentGrants pulumi.StringPtrInput
+ // The name of the role ownership is granted on.
+ OnRoleName pulumi.StringInput
+ // The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ ToRoleName pulumi.StringInput
+}
+
+func (RoleOwnershipGrantArgs) ElementType() reflect.Type {
+ return reflect.TypeOf((*roleOwnershipGrantArgs)(nil)).Elem()
+}
+
+type RoleOwnershipGrantInput interface {
+ pulumi.Input
+
+ ToRoleOwnershipGrantOutput() RoleOwnershipGrantOutput
+ ToRoleOwnershipGrantOutputWithContext(ctx context.Context) RoleOwnershipGrantOutput
+}
+
+func (*RoleOwnershipGrant) ElementType() reflect.Type {
+ return reflect.TypeOf((**RoleOwnershipGrant)(nil)).Elem()
+}
+
+func (i *RoleOwnershipGrant) ToRoleOwnershipGrantOutput() RoleOwnershipGrantOutput {
+ return i.ToRoleOwnershipGrantOutputWithContext(context.Background())
+}
+
+func (i *RoleOwnershipGrant) ToRoleOwnershipGrantOutputWithContext(ctx context.Context) RoleOwnershipGrantOutput {
+ return pulumi.ToOutputWithContext(ctx, i).(RoleOwnershipGrantOutput)
+}
+
+// RoleOwnershipGrantArrayInput is an input type that accepts RoleOwnershipGrantArray and RoleOwnershipGrantArrayOutput values.
+// You can construct a concrete instance of `RoleOwnershipGrantArrayInput` via:
+//
+// RoleOwnershipGrantArray{ RoleOwnershipGrantArgs{...} }
+type RoleOwnershipGrantArrayInput interface {
+ pulumi.Input
+
+ ToRoleOwnershipGrantArrayOutput() RoleOwnershipGrantArrayOutput
+ ToRoleOwnershipGrantArrayOutputWithContext(context.Context) RoleOwnershipGrantArrayOutput
+}
+
+type RoleOwnershipGrantArray []RoleOwnershipGrantInput
+
+func (RoleOwnershipGrantArray) ElementType() reflect.Type {
+ return reflect.TypeOf((*[]*RoleOwnershipGrant)(nil)).Elem()
+}
+
+func (i RoleOwnershipGrantArray) ToRoleOwnershipGrantArrayOutput() RoleOwnershipGrantArrayOutput {
+ return i.ToRoleOwnershipGrantArrayOutputWithContext(context.Background())
+}
+
+func (i RoleOwnershipGrantArray) ToRoleOwnershipGrantArrayOutputWithContext(ctx context.Context) RoleOwnershipGrantArrayOutput {
+ return pulumi.ToOutputWithContext(ctx, i).(RoleOwnershipGrantArrayOutput)
+}
+
+// RoleOwnershipGrantMapInput is an input type that accepts RoleOwnershipGrantMap and RoleOwnershipGrantMapOutput values.
+// You can construct a concrete instance of `RoleOwnershipGrantMapInput` via:
+//
+// RoleOwnershipGrantMap{ "key": RoleOwnershipGrantArgs{...} }
+type RoleOwnershipGrantMapInput interface {
+ pulumi.Input
+
+ ToRoleOwnershipGrantMapOutput() RoleOwnershipGrantMapOutput
+ ToRoleOwnershipGrantMapOutputWithContext(context.Context) RoleOwnershipGrantMapOutput
+}
+
+type RoleOwnershipGrantMap map[string]RoleOwnershipGrantInput
+
+func (RoleOwnershipGrantMap) ElementType() reflect.Type {
+ return reflect.TypeOf((*map[string]*RoleOwnershipGrant)(nil)).Elem()
+}
+
+func (i RoleOwnershipGrantMap) ToRoleOwnershipGrantMapOutput() RoleOwnershipGrantMapOutput {
+ return i.ToRoleOwnershipGrantMapOutputWithContext(context.Background())
+}
+
+func (i RoleOwnershipGrantMap) ToRoleOwnershipGrantMapOutputWithContext(ctx context.Context) RoleOwnershipGrantMapOutput {
+ return pulumi.ToOutputWithContext(ctx, i).(RoleOwnershipGrantMapOutput)
+}
+
+type RoleOwnershipGrantOutput struct{ *pulumi.OutputState }
+
+func (RoleOwnershipGrantOutput) ElementType() reflect.Type {
+ return reflect.TypeOf((**RoleOwnershipGrant)(nil)).Elem()
+}
+
+func (o RoleOwnershipGrantOutput) ToRoleOwnershipGrantOutput() RoleOwnershipGrantOutput {
+ return o
+}
+
+func (o RoleOwnershipGrantOutput) ToRoleOwnershipGrantOutputWithContext(ctx context.Context) RoleOwnershipGrantOutput {
+ return o
+}
+
+type RoleOwnershipGrantArrayOutput struct{ *pulumi.OutputState }
+
+func (RoleOwnershipGrantArrayOutput) ElementType() reflect.Type {
+ return reflect.TypeOf((*[]*RoleOwnershipGrant)(nil)).Elem()
+}
+
+func (o RoleOwnershipGrantArrayOutput) ToRoleOwnershipGrantArrayOutput() RoleOwnershipGrantArrayOutput {
+ return o
+}
+
+func (o RoleOwnershipGrantArrayOutput) ToRoleOwnershipGrantArrayOutputWithContext(ctx context.Context) RoleOwnershipGrantArrayOutput {
+ return o
+}
+
+func (o RoleOwnershipGrantArrayOutput) Index(i pulumi.IntInput) RoleOwnershipGrantOutput {
+ return pulumi.All(o, i).ApplyT(func(vs []interface{}) *RoleOwnershipGrant {
+ return vs[0].([]*RoleOwnershipGrant)[vs[1].(int)]
+ }).(RoleOwnershipGrantOutput)
+}
+
+type RoleOwnershipGrantMapOutput struct{ *pulumi.OutputState }
+
+func (RoleOwnershipGrantMapOutput) ElementType() reflect.Type {
+ return reflect.TypeOf((*map[string]*RoleOwnershipGrant)(nil)).Elem()
+}
+
+func (o RoleOwnershipGrantMapOutput) ToRoleOwnershipGrantMapOutput() RoleOwnershipGrantMapOutput {
+ return o
+}
+
+func (o RoleOwnershipGrantMapOutput) ToRoleOwnershipGrantMapOutputWithContext(ctx context.Context) RoleOwnershipGrantMapOutput {
+ return o
+}
+
+func (o RoleOwnershipGrantMapOutput) MapIndex(k pulumi.StringInput) RoleOwnershipGrantOutput {
+ return pulumi.All(o, k).ApplyT(func(vs []interface{}) *RoleOwnershipGrant {
+ return vs[0].(map[string]*RoleOwnershipGrant)[vs[1].(string)]
+ }).(RoleOwnershipGrantOutput)
+}
+
+func init() {
+ pulumi.RegisterInputType(reflect.TypeOf((*RoleOwnershipGrantInput)(nil)).Elem(), &RoleOwnershipGrant{})
+ pulumi.RegisterInputType(reflect.TypeOf((*RoleOwnershipGrantArrayInput)(nil)).Elem(), RoleOwnershipGrantArray{})
+ pulumi.RegisterInputType(reflect.TypeOf((*RoleOwnershipGrantMapInput)(nil)).Elem(), RoleOwnershipGrantMap{})
+ pulumi.RegisterOutputType(RoleOwnershipGrantOutput{})
+ pulumi.RegisterOutputType(RoleOwnershipGrantArrayOutput{})
+ pulumi.RegisterOutputType(RoleOwnershipGrantMapOutput{})
+}
diff --git a/sdk/go/snowflake/rowAccessPolicyGrant.go b/sdk/go/snowflake/rowAccessPolicyGrant.go
index cf3bc0fe..4ab44416 100644
--- a/sdk/go/snowflake/rowAccessPolicyGrant.go
+++ b/sdk/go/snowflake/rowAccessPolicyGrant.go
@@ -54,6 +54,9 @@ type RowAccessPolicyGrant struct {
// The name of the database containing the row access policy on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The privilege to grant on the row access policy.
Privilege pulumi.StringPtrOutput `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -106,6 +109,9 @@ func GetRowAccessPolicyGrant(ctx *pulumi.Context,
type rowAccessPolicyGrantState struct {
// The name of the database containing the row access policy on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The privilege to grant on the row access policy.
Privilege *string `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -121,6 +127,9 @@ type rowAccessPolicyGrantState struct {
type RowAccessPolicyGrantState struct {
// The name of the database containing the row access policy on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The privilege to grant on the row access policy.
Privilege pulumi.StringPtrInput
// Grants privilege to these roles.
@@ -140,6 +149,9 @@ func (RowAccessPolicyGrantState) ElementType() reflect.Type {
type rowAccessPolicyGrantArgs struct {
// The name of the database containing the row access policy on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The privilege to grant on the row access policy.
Privilege *string `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -156,6 +168,9 @@ type rowAccessPolicyGrantArgs struct {
type RowAccessPolicyGrantArgs struct {
// The name of the database containing the row access policy on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The privilege to grant on the row access policy.
Privilege pulumi.StringPtrInput
// Grants privilege to these roles.
diff --git a/sdk/go/snowflake/schemaGrant.go b/sdk/go/snowflake/schemaGrant.go
index ddbc8e93..a1e0c667 100644
--- a/sdk/go/snowflake/schemaGrant.go
+++ b/sdk/go/snowflake/schemaGrant.go
@@ -58,6 +58,9 @@ type SchemaGrant struct {
// The name of the database containing the schema on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrOutput `pulumi:"onFuture"`
// The privilege to grant on the current or future schema. Note that if "OWNERSHIP" is specified, ensure that the role that
@@ -107,6 +110,9 @@ func GetSchemaGrant(ctx *pulumi.Context,
type schemaGrantState struct {
// The name of the database containing the schema on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future schema. Note that if "OWNERSHIP" is specified, ensure that the role that
@@ -125,6 +131,9 @@ type schemaGrantState struct {
type SchemaGrantState struct {
// The name of the database containing the schema on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future schema. Note that if "OWNERSHIP" is specified, ensure that the role that
@@ -147,6 +156,9 @@ func (SchemaGrantState) ElementType() reflect.Type {
type schemaGrantArgs struct {
// The name of the database containing the schema on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future schema. Note that if "OWNERSHIP" is specified, ensure that the role that
@@ -166,6 +178,9 @@ type schemaGrantArgs struct {
type SchemaGrantArgs struct {
// The name of the database containing the schema on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future schema. Note that if "OWNERSHIP" is specified, ensure that the role that
diff --git a/sdk/go/snowflake/sequenceGrant.go b/sdk/go/snowflake/sequenceGrant.go
index 9b850f4c..6af4d2a5 100644
--- a/sdk/go/snowflake/sequenceGrant.go
+++ b/sdk/go/snowflake/sequenceGrant.go
@@ -55,6 +55,9 @@ type SequenceGrant struct {
// The name of the database containing the current or future sequences on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrOutput `pulumi:"onFuture"`
// The privilege to grant on the current or future sequence.
@@ -106,6 +109,9 @@ func GetSequenceGrant(ctx *pulumi.Context,
type sequenceGrantState struct {
// The name of the database containing the current or future sequences on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future sequence.
@@ -123,6 +129,9 @@ type sequenceGrantState struct {
type SequenceGrantState struct {
// The name of the database containing the current or future sequences on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future sequence.
@@ -144,6 +153,9 @@ func (SequenceGrantState) ElementType() reflect.Type {
type sequenceGrantArgs struct {
// The name of the database containing the current or future sequences on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future sequence.
@@ -162,6 +174,9 @@ type sequenceGrantArgs struct {
type SequenceGrantArgs struct {
// The name of the database containing the current or future sequences on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future sequence.
diff --git a/sdk/go/snowflake/stageGrant.go b/sdk/go/snowflake/stageGrant.go
index 44a84c1c..324ecb1f 100644
--- a/sdk/go/snowflake/stageGrant.go
+++ b/sdk/go/snowflake/stageGrant.go
@@ -23,6 +23,9 @@ type StageGrant struct {
// The name of the database containing the current stage on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrOutput `pulumi:"onFuture"`
// The privilege to grant on the stage.
@@ -74,6 +77,9 @@ func GetStageGrant(ctx *pulumi.Context,
type stageGrantState struct {
// The name of the database containing the current stage on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the stage.
@@ -91,6 +97,9 @@ type stageGrantState struct {
type StageGrantState struct {
// The name of the database containing the current stage on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the stage.
@@ -112,6 +121,9 @@ func (StageGrantState) ElementType() reflect.Type {
type stageGrantArgs struct {
// The name of the database containing the current stage on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the stage.
@@ -130,6 +142,9 @@ type stageGrantArgs struct {
type StageGrantArgs struct {
// The name of the database containing the current stage on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the stage.
diff --git a/sdk/go/snowflake/streamGrant.go b/sdk/go/snowflake/streamGrant.go
index 2766ac92..653c261b 100644
--- a/sdk/go/snowflake/streamGrant.go
+++ b/sdk/go/snowflake/streamGrant.go
@@ -55,6 +55,9 @@ type StreamGrant struct {
// The name of the database containing the current or future streams on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrOutput `pulumi:"onFuture"`
// The privilege to grant on the current or future stream.
@@ -106,6 +109,9 @@ func GetStreamGrant(ctx *pulumi.Context,
type streamGrantState struct {
// The name of the database containing the current or future streams on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future stream.
@@ -123,6 +129,9 @@ type streamGrantState struct {
type StreamGrantState struct {
// The name of the database containing the current or future streams on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future stream.
@@ -144,6 +153,9 @@ func (StreamGrantState) ElementType() reflect.Type {
type streamGrantArgs struct {
// The name of the database containing the current or future streams on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future stream.
@@ -162,6 +174,9 @@ type streamGrantArgs struct {
type StreamGrantArgs struct {
// The name of the database containing the current or future streams on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future stream.
diff --git a/sdk/go/snowflake/tableGrant.go b/sdk/go/snowflake/tableGrant.go
index 1db8a026..a79f2105 100644
--- a/sdk/go/snowflake/tableGrant.go
+++ b/sdk/go/snowflake/tableGrant.go
@@ -57,6 +57,9 @@ type TableGrant struct {
// The name of the database containing the current or future tables on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrOutput `pulumi:"onFuture"`
// The privilege to grant on the current or future table.
@@ -107,6 +110,9 @@ func GetTableGrant(ctx *pulumi.Context,
type tableGrantState struct {
// The name of the database containing the current or future tables on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future table.
@@ -126,6 +132,9 @@ type tableGrantState struct {
type TableGrantState struct {
// The name of the database containing the current or future tables on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future table.
@@ -149,6 +158,9 @@ func (TableGrantState) ElementType() reflect.Type {
type tableGrantArgs struct {
// The name of the database containing the current or future tables on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future table.
@@ -169,6 +181,9 @@ type tableGrantArgs struct {
type TableGrantArgs struct {
// The name of the database containing the current or future tables on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future table.
diff --git a/sdk/go/snowflake/taskGrant.go b/sdk/go/snowflake/taskGrant.go
index 231b20bd..4459bab1 100644
--- a/sdk/go/snowflake/taskGrant.go
+++ b/sdk/go/snowflake/taskGrant.go
@@ -55,6 +55,9 @@ type TaskGrant struct {
// The name of the database containing the current or future tasks on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrOutput `pulumi:"onFuture"`
// The privilege to grant on the current or future task.
@@ -106,6 +109,9 @@ func GetTaskGrant(ctx *pulumi.Context,
type taskGrantState struct {
// The name of the database containing the current or future tasks on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future task.
@@ -123,6 +129,9 @@ type taskGrantState struct {
type TaskGrantState struct {
// The name of the database containing the current or future tasks on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future task.
@@ -144,6 +153,9 @@ func (TaskGrantState) ElementType() reflect.Type {
type taskGrantArgs struct {
// The name of the database containing the current or future tasks on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future task.
@@ -162,6 +174,9 @@ type taskGrantArgs struct {
type TaskGrantArgs struct {
// The name of the database containing the current or future tasks on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future task.
diff --git a/sdk/go/snowflake/viewGrant.go b/sdk/go/snowflake/viewGrant.go
index 16ccbcfa..bf6bcc0a 100644
--- a/sdk/go/snowflake/viewGrant.go
+++ b/sdk/go/snowflake/viewGrant.go
@@ -59,6 +59,9 @@ type ViewGrant struct {
// The name of the database containing the current or future views on which to grant privileges.
DatabaseName pulumi.StringOutput `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrOutput `pulumi:"onFuture"`
// The privilege to grant on the current or future view.
@@ -109,6 +112,9 @@ func GetViewGrant(ctx *pulumi.Context,
type viewGrantState struct {
// The name of the database containing the current or future views on which to grant privileges.
DatabaseName *string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future view.
@@ -128,6 +134,9 @@ type viewGrantState struct {
type ViewGrantState struct {
// The name of the database containing the current or future views on which to grant privileges.
DatabaseName pulumi.StringPtrInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future view.
@@ -151,6 +160,9 @@ func (ViewGrantState) ElementType() reflect.Type {
type viewGrantArgs struct {
// The name of the database containing the current or future views on which to grant privileges.
DatabaseName string `pulumi:"databaseName"`
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
OnFuture *bool `pulumi:"onFuture"`
// The privilege to grant on the current or future view.
@@ -171,6 +183,9 @@ type viewGrantArgs struct {
type ViewGrantArgs struct {
// The name of the database containing the current or future views on which to grant privileges.
DatabaseName pulumi.StringInput
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
OnFuture pulumi.BoolPtrInput
// The privilege to grant on the current or future view.
diff --git a/sdk/go/snowflake/warehouseGrant.go b/sdk/go/snowflake/warehouseGrant.go
index e219be72..e7f3d01f 100644
--- a/sdk/go/snowflake/warehouseGrant.go
+++ b/sdk/go/snowflake/warehouseGrant.go
@@ -49,6 +49,9 @@ import (
type WarehouseGrant struct {
pulumi.CustomResourceState
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrOutput `pulumi:"enableMultipleGrants"`
// The privilege to grant on the warehouse.
Privilege pulumi.StringPtrOutput `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -91,6 +94,9 @@ func GetWarehouseGrant(ctx *pulumi.Context,
// Input properties used for looking up and filtering WarehouseGrant resources.
type warehouseGrantState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The privilege to grant on the warehouse.
Privilege *string `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -102,6 +108,9 @@ type warehouseGrantState struct {
}
type WarehouseGrantState struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The privilege to grant on the warehouse.
Privilege pulumi.StringPtrInput
// Grants privilege to these roles.
@@ -117,6 +126,9 @@ func (WarehouseGrantState) ElementType() reflect.Type {
}
type warehouseGrantArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants *bool `pulumi:"enableMultipleGrants"`
// The privilege to grant on the warehouse.
Privilege *string `pulumi:"privilege"`
// Grants privilege to these roles.
@@ -129,6 +141,9 @@ type warehouseGrantArgs struct {
// The set of arguments for constructing a WarehouseGrant resource.
type WarehouseGrantArgs struct {
+ // When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ // grants applied to roles and objects outside Terraform.
+ EnableMultipleGrants pulumi.BoolPtrInput
// The privilege to grant on the warehouse.
Privilege pulumi.StringPtrInput
// Grants privilege to these roles.
diff --git a/sdk/nodejs/accountGrant.ts b/sdk/nodejs/accountGrant.ts
index 6bb02e75..09e7398d 100644
--- a/sdk/nodejs/accountGrant.ts
+++ b/sdk/nodejs/accountGrant.ts
@@ -57,6 +57,11 @@ export class AccountGrant extends pulumi.CustomResource {
return obj['__pulumiType'] === AccountGrant.__pulumiType;
}
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* The privilege to grant on the account.
*/
@@ -83,11 +88,13 @@ export class AccountGrant extends pulumi.CustomResource {
opts = opts || {};
if (opts.id) {
const state = argsOrState as AccountGrantState | undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
resourceInputs["withGrantOption"] = state ? state.withGrantOption : undefined;
} else {
const args = argsOrState as AccountGrantArgs | undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
resourceInputs["withGrantOption"] = args ? args.withGrantOption : undefined;
@@ -101,6 +108,11 @@ export class AccountGrant extends pulumi.CustomResource {
* Input properties used for looking up and filtering AccountGrant resources.
*/
export interface AccountGrantState {
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The privilege to grant on the account.
*/
@@ -119,6 +131,11 @@ export interface AccountGrantState {
* The set of arguments for constructing a AccountGrant resource.
*/
export interface AccountGrantArgs {
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The privilege to grant on the account.
*/
diff --git a/sdk/nodejs/databaseGrant.ts b/sdk/nodejs/databaseGrant.ts
index ed600c96..982a01d8 100644
--- a/sdk/nodejs/databaseGrant.ts
+++ b/sdk/nodejs/databaseGrant.ts
@@ -66,6 +66,11 @@ export class DatabaseGrant extends pulumi.CustomResource {
* The name of the database on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* The privilege to grant on the database.
*/
@@ -97,6 +102,7 @@ export class DatabaseGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as DatabaseGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
resourceInputs["shares"] = state ? state.shares : undefined;
@@ -107,6 +113,7 @@ export class DatabaseGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'databaseName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
resourceInputs["shares"] = args ? args.shares : undefined;
@@ -125,6 +132,11 @@ export interface DatabaseGrantState {
* The name of the database on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The privilege to grant on the database.
*/
@@ -151,6 +163,11 @@ export interface DatabaseGrantArgs {
* The name of the database on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The privilege to grant on the database.
*/
diff --git a/sdk/nodejs/externalTableGrant.ts b/sdk/nodejs/externalTableGrant.ts
index 8aa21639..dce9c171 100644
--- a/sdk/nodejs/externalTableGrant.ts
+++ b/sdk/nodejs/externalTableGrant.ts
@@ -69,6 +69,11 @@ export class ExternalTableGrant extends pulumi.CustomResource {
* The name of the database containing the current or future external tables on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* The name of the external table on which to grant privileges immediately (only valid if onFuture is false).
*/
@@ -112,6 +117,7 @@ export class ExternalTableGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as ExternalTableGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["externalTableName"] = state ? state.externalTableName : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
@@ -128,6 +134,7 @@ export class ExternalTableGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'schemaName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["externalTableName"] = args ? args.externalTableName : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
@@ -149,6 +156,11 @@ export interface ExternalTableGrantState {
* The name of the database containing the current or future external tables on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the external table on which to grant privileges immediately (only valid if onFuture is false).
*/
@@ -187,6 +199,11 @@ export interface ExternalTableGrantArgs {
* The name of the database containing the current or future external tables on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the external table on which to grant privileges immediately (only valid if onFuture is false).
*/
diff --git a/sdk/nodejs/fileFormatGrant.ts b/sdk/nodejs/fileFormatGrant.ts
index b3fe6e2c..db6f5a7f 100644
--- a/sdk/nodejs/fileFormatGrant.ts
+++ b/sdk/nodejs/fileFormatGrant.ts
@@ -65,6 +65,11 @@ export class FileFormatGrant extends pulumi.CustomResource {
* The name of the database containing the current or future file formats on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* The name of the file format on which to grant privileges immediately (only valid if onFuture is false).
*/
@@ -104,6 +109,7 @@ export class FileFormatGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as FileFormatGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["fileFormatName"] = state ? state.fileFormatName : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
@@ -119,6 +125,7 @@ export class FileFormatGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'schemaName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["fileFormatName"] = args ? args.fileFormatName : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
@@ -139,6 +146,11 @@ export interface FileFormatGrantState {
* The name of the database containing the current or future file formats on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the file format on which to grant privileges immediately (only valid if onFuture is false).
*/
@@ -173,6 +185,11 @@ export interface FileFormatGrantArgs {
* The name of the database containing the current or future file formats on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the file format on which to grant privileges immediately (only valid if onFuture is false).
*/
diff --git a/sdk/nodejs/functionGrant.ts b/sdk/nodejs/functionGrant.ts
index 357351ee..1588b2b6 100644
--- a/sdk/nodejs/functionGrant.ts
+++ b/sdk/nodejs/functionGrant.ts
@@ -85,6 +85,11 @@ export class FunctionGrant extends pulumi.CustomResource {
* The name of the database containing the current or future functions on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* The name of the function on which to grant privileges immediately (only valid if onFuture is false).
*/
@@ -133,6 +138,7 @@ export class FunctionGrant extends pulumi.CustomResource {
const state = argsOrState as FunctionGrantState | undefined;
resourceInputs["arguments"] = state ? state.arguments : undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["functionName"] = state ? state.functionName : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
@@ -151,6 +157,7 @@ export class FunctionGrant extends pulumi.CustomResource {
}
resourceInputs["arguments"] = args ? args.arguments : undefined;
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["functionName"] = args ? args.functionName : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
@@ -177,6 +184,11 @@ export interface FunctionGrantState {
* The name of the database containing the current or future functions on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the function on which to grant privileges immediately (only valid if onFuture is false).
*/
@@ -223,6 +235,11 @@ export interface FunctionGrantArgs {
* The name of the database containing the current or future functions on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the function on which to grant privileges immediately (only valid if onFuture is false).
*/
diff --git a/sdk/nodejs/index.ts b/sdk/nodejs/index.ts
index 35dc6ace..1060ce81 100644
--- a/sdk/nodejs/index.ts
+++ b/sdk/nodejs/index.ts
@@ -62,6 +62,7 @@ export * from "./resourceMonitor";
export * from "./resourceMonitorGrant";
export * from "./role";
export * from "./roleGrants";
+export * from "./roleOwnershipGrant";
export * from "./rowAccessPolicy";
export * from "./rowAccessPolicyGrant";
export * from "./samlIntegration";
@@ -128,6 +129,7 @@ import { ResourceMonitor } from "./resourceMonitor";
import { ResourceMonitorGrant } from "./resourceMonitorGrant";
import { Role } from "./role";
import { RoleGrants } from "./roleGrants";
+import { RoleOwnershipGrant } from "./roleOwnershipGrant";
import { RowAccessPolicy } from "./rowAccessPolicy";
import { RowAccessPolicyGrant } from "./rowAccessPolicyGrant";
import { SamlIntegration } from "./samlIntegration";
@@ -218,6 +220,8 @@ const _module = {
return new Role(name, undefined, { urn })
case "snowflake:index/roleGrants:RoleGrants":
return new RoleGrants(name, undefined, { urn })
+ case "snowflake:index/roleOwnershipGrant:RoleOwnershipGrant":
+ return new RoleOwnershipGrant(name, undefined, { urn })
case "snowflake:index/rowAccessPolicy:RowAccessPolicy":
return new RowAccessPolicy(name, undefined, { urn })
case "snowflake:index/rowAccessPolicyGrant:RowAccessPolicyGrant":
@@ -303,6 +307,7 @@ pulumi.runtime.registerResourceModule("snowflake", "index/resourceMonitor", _mod
pulumi.runtime.registerResourceModule("snowflake", "index/resourceMonitorGrant", _module)
pulumi.runtime.registerResourceModule("snowflake", "index/role", _module)
pulumi.runtime.registerResourceModule("snowflake", "index/roleGrants", _module)
+pulumi.runtime.registerResourceModule("snowflake", "index/roleOwnershipGrant", _module)
pulumi.runtime.registerResourceModule("snowflake", "index/rowAccessPolicy", _module)
pulumi.runtime.registerResourceModule("snowflake", "index/rowAccessPolicyGrant", _module)
pulumi.runtime.registerResourceModule("snowflake", "index/samlIntegration", _module)
diff --git a/sdk/nodejs/integrationGrant.ts b/sdk/nodejs/integrationGrant.ts
index 2820ced7..4f5fa6c6 100644
--- a/sdk/nodejs/integrationGrant.ts
+++ b/sdk/nodejs/integrationGrant.ts
@@ -58,6 +58,11 @@ export class IntegrationGrant extends pulumi.CustomResource {
return obj['__pulumiType'] === IntegrationGrant.__pulumiType;
}
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* Identifier for the integration; must be unique for your account.
*/
@@ -88,6 +93,7 @@ export class IntegrationGrant extends pulumi.CustomResource {
opts = opts || {};
if (opts.id) {
const state = argsOrState as IntegrationGrantState | undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["integrationName"] = state ? state.integrationName : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -97,6 +103,7 @@ export class IntegrationGrant extends pulumi.CustomResource {
if ((!args || args.integrationName === undefined) && !opts.urn) {
throw new Error("Missing required property 'integrationName'");
}
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["integrationName"] = args ? args.integrationName : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -111,6 +118,11 @@ export class IntegrationGrant extends pulumi.CustomResource {
* Input properties used for looking up and filtering IntegrationGrant resources.
*/
export interface IntegrationGrantState {
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* Identifier for the integration; must be unique for your account.
*/
@@ -133,6 +145,11 @@ export interface IntegrationGrantState {
* The set of arguments for constructing a IntegrationGrant resource.
*/
export interface IntegrationGrantArgs {
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* Identifier for the integration; must be unique for your account.
*/
diff --git a/sdk/nodejs/maskingPolicyGrant.ts b/sdk/nodejs/maskingPolicyGrant.ts
index 0a9b5bc4..af99333d 100644
--- a/sdk/nodejs/maskingPolicyGrant.ts
+++ b/sdk/nodejs/maskingPolicyGrant.ts
@@ -36,6 +36,11 @@ export class MaskingPolicyGrant extends pulumi.CustomResource {
* The name of the database containing the masking policy on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* The name of the masking policy on which to grant privileges immediately.
*/
@@ -71,6 +76,7 @@ export class MaskingPolicyGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as MaskingPolicyGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["maskingPolicyName"] = state ? state.maskingPolicyName : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -88,6 +94,7 @@ export class MaskingPolicyGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'schemaName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["maskingPolicyName"] = args ? args.maskingPolicyName : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -107,6 +114,11 @@ export interface MaskingPolicyGrantState {
* The name of the database containing the masking policy on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the masking policy on which to grant privileges immediately.
*/
@@ -137,6 +149,11 @@ export interface MaskingPolicyGrantArgs {
* The name of the database containing the masking policy on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the masking policy on which to grant privileges immediately.
*/
diff --git a/sdk/nodejs/materializedViewGrant.ts b/sdk/nodejs/materializedViewGrant.ts
index 5ed5701f..874c4a45 100644
--- a/sdk/nodejs/materializedViewGrant.ts
+++ b/sdk/nodejs/materializedViewGrant.ts
@@ -69,6 +69,11 @@ export class MaterializedViewGrant extends pulumi.CustomResource {
* The name of the database containing the current or future materialized views on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* The name of the materialized view on which to grant privileges immediately (only valid if onFuture is false).
*/
@@ -112,6 +117,7 @@ export class MaterializedViewGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as MaterializedViewGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["materializedViewName"] = state ? state.materializedViewName : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
@@ -125,6 +131,7 @@ export class MaterializedViewGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'databaseName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["materializedViewName"] = args ? args.materializedViewName : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
@@ -146,6 +153,11 @@ export interface MaterializedViewGrantState {
* The name of the database containing the current or future materialized views on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the materialized view on which to grant privileges immediately (only valid if onFuture is false).
*/
@@ -184,6 +196,11 @@ export interface MaterializedViewGrantArgs {
* The name of the database containing the current or future materialized views on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the materialized view on which to grant privileges immediately (only valid if onFuture is false).
*/
diff --git a/sdk/nodejs/pipeGrant.ts b/sdk/nodejs/pipeGrant.ts
index 23eb70a1..4feed55f 100644
--- a/sdk/nodejs/pipeGrant.ts
+++ b/sdk/nodejs/pipeGrant.ts
@@ -65,6 +65,11 @@ export class PipeGrant extends pulumi.CustomResource {
* The name of the database containing the current or future pipes on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
*/
@@ -104,6 +109,7 @@ export class PipeGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as PipeGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["pipeName"] = state ? state.pipeName : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
@@ -119,6 +125,7 @@ export class PipeGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'schemaName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["pipeName"] = args ? args.pipeName : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
@@ -139,6 +146,11 @@ export interface PipeGrantState {
* The name of the database containing the current or future pipes on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
*/
@@ -173,6 +185,11 @@ export interface PipeGrantArgs {
* The name of the database containing the current or future pipes on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future pipes in the given schema. When this is true and no schema*name is provided apply this grant on all future pipes in the given database. The pipe*name field must be unset in order to use on*future.
*/
diff --git a/sdk/nodejs/procedureGrant.ts b/sdk/nodejs/procedureGrant.ts
index 538e75f9..bd42bc2a 100644
--- a/sdk/nodejs/procedureGrant.ts
+++ b/sdk/nodejs/procedureGrant.ts
@@ -85,6 +85,11 @@ export class ProcedureGrant extends pulumi.CustomResource {
* The name of the database containing the current or future procedures on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
*/
@@ -133,6 +138,7 @@ export class ProcedureGrant extends pulumi.CustomResource {
const state = argsOrState as ProcedureGrantState | undefined;
resourceInputs["arguments"] = state ? state.arguments : undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["procedureName"] = state ? state.procedureName : undefined;
@@ -151,6 +157,7 @@ export class ProcedureGrant extends pulumi.CustomResource {
}
resourceInputs["arguments"] = args ? args.arguments : undefined;
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["procedureName"] = args ? args.procedureName : undefined;
@@ -177,6 +184,11 @@ export interface ProcedureGrantState {
* The name of the database containing the current or future procedures on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
*/
@@ -223,6 +235,11 @@ export interface ProcedureGrantArgs {
* The name of the database containing the current or future procedures on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future procedures in the given schema. When this is true and no schema*name is provided apply this grant on all future procedures in the given database. The procedure*name and shares fields must be unset in order to use on*future.
*/
diff --git a/sdk/nodejs/resourceMonitorGrant.ts b/sdk/nodejs/resourceMonitorGrant.ts
index b07850d4..dba18d55 100644
--- a/sdk/nodejs/resourceMonitorGrant.ts
+++ b/sdk/nodejs/resourceMonitorGrant.ts
@@ -53,6 +53,11 @@ export class ResourceMonitorGrant extends pulumi.CustomResource {
return obj['__pulumiType'] === ResourceMonitorGrant.__pulumiType;
}
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* Identifier for the resource monitor; must be unique for your account.
*/
@@ -83,6 +88,7 @@ export class ResourceMonitorGrant extends pulumi.CustomResource {
opts = opts || {};
if (opts.id) {
const state = argsOrState as ResourceMonitorGrantState | undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["monitorName"] = state ? state.monitorName : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -92,6 +98,7 @@ export class ResourceMonitorGrant extends pulumi.CustomResource {
if ((!args || args.monitorName === undefined) && !opts.urn) {
throw new Error("Missing required property 'monitorName'");
}
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["monitorName"] = args ? args.monitorName : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -106,6 +113,11 @@ export class ResourceMonitorGrant extends pulumi.CustomResource {
* Input properties used for looking up and filtering ResourceMonitorGrant resources.
*/
export interface ResourceMonitorGrantState {
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* Identifier for the resource monitor; must be unique for your account.
*/
@@ -128,6 +140,11 @@ export interface ResourceMonitorGrantState {
* The set of arguments for constructing a ResourceMonitorGrant resource.
*/
export interface ResourceMonitorGrantArgs {
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* Identifier for the resource monitor; must be unique for your account.
*/
diff --git a/sdk/nodejs/roleGrants.ts b/sdk/nodejs/roleGrants.ts
index c275630e..732d1ae7 100644
--- a/sdk/nodejs/roleGrants.ts
+++ b/sdk/nodejs/roleGrants.ts
@@ -65,6 +65,11 @@ export class RoleGrants extends pulumi.CustomResource {
return obj['__pulumiType'] === RoleGrants.__pulumiType;
}
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* The name of the role we are granting.
*/
@@ -91,6 +96,7 @@ export class RoleGrants extends pulumi.CustomResource {
opts = opts || {};
if (opts.id) {
const state = argsOrState as RoleGrantsState | undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["roleName"] = state ? state.roleName : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
resourceInputs["users"] = state ? state.users : undefined;
@@ -99,6 +105,7 @@ export class RoleGrants extends pulumi.CustomResource {
if ((!args || args.roleName === undefined) && !opts.urn) {
throw new Error("Missing required property 'roleName'");
}
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["roleName"] = args ? args.roleName : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
resourceInputs["users"] = args ? args.users : undefined;
@@ -112,6 +119,11 @@ export class RoleGrants extends pulumi.CustomResource {
* Input properties used for looking up and filtering RoleGrants resources.
*/
export interface RoleGrantsState {
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the role we are granting.
*/
@@ -130,6 +142,11 @@ export interface RoleGrantsState {
* The set of arguments for constructing a RoleGrants resource.
*/
export interface RoleGrantsArgs {
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The name of the role we are granting.
*/
diff --git a/sdk/nodejs/roleOwnershipGrant.ts b/sdk/nodejs/roleOwnershipGrant.ts
new file mode 100644
index 00000000..f67b28f7
--- /dev/null
+++ b/sdk/nodejs/roleOwnershipGrant.ts
@@ -0,0 +1,115 @@
+// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+import * as pulumi from "@pulumi/pulumi";
+import * as utilities from "./utilities";
+
+export class RoleOwnershipGrant extends pulumi.CustomResource {
+ /**
+ * Get an existing RoleOwnershipGrant resource's state with the given name, ID, and optional extra
+ * properties used to qualify the lookup.
+ *
+ * @param name The _unique_ name of the resulting resource.
+ * @param id The _unique_ provider ID of the resource to lookup.
+ * @param state Any extra arguments used during the lookup.
+ * @param opts Optional settings to control the behavior of the CustomResource.
+ */
+ public static get(name: string, id: pulumi.Input, state?: RoleOwnershipGrantState, opts?: pulumi.CustomResourceOptions): RoleOwnershipGrant {
+ return new RoleOwnershipGrant(name, state, { ...opts, id: id });
+ }
+
+ /** @internal */
+ public static readonly __pulumiType = 'snowflake:index/roleOwnershipGrant:RoleOwnershipGrant';
+
+ /**
+ * Returns true if the given object is an instance of RoleOwnershipGrant. This is designed to work even
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
+ */
+ public static isInstance(obj: any): obj is RoleOwnershipGrant {
+ if (obj === undefined || obj === null) {
+ return false;
+ }
+ return obj['__pulumiType'] === RoleOwnershipGrant.__pulumiType;
+ }
+
+ /**
+ * Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ */
+ public readonly currentGrants!: pulumi.Output;
+ /**
+ * The name of the role ownership is granted on.
+ */
+ public readonly onRoleName!: pulumi.Output;
+ /**
+ * The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ */
+ public readonly toRoleName!: pulumi.Output;
+
+ /**
+ * Create a RoleOwnershipGrant resource with the given unique name, arguments, and options.
+ *
+ * @param name The _unique_ name of the resource.
+ * @param args The arguments to use to populate this resource's properties.
+ * @param opts A bag of options that control this resource's behavior.
+ */
+ constructor(name: string, args: RoleOwnershipGrantArgs, opts?: pulumi.CustomResourceOptions)
+ constructor(name: string, argsOrState?: RoleOwnershipGrantArgs | RoleOwnershipGrantState, opts?: pulumi.CustomResourceOptions) {
+ let resourceInputs: pulumi.Inputs = {};
+ opts = opts || {};
+ if (opts.id) {
+ const state = argsOrState as RoleOwnershipGrantState | undefined;
+ resourceInputs["currentGrants"] = state ? state.currentGrants : undefined;
+ resourceInputs["onRoleName"] = state ? state.onRoleName : undefined;
+ resourceInputs["toRoleName"] = state ? state.toRoleName : undefined;
+ } else {
+ const args = argsOrState as RoleOwnershipGrantArgs | undefined;
+ if ((!args || args.onRoleName === undefined) && !opts.urn) {
+ throw new Error("Missing required property 'onRoleName'");
+ }
+ if ((!args || args.toRoleName === undefined) && !opts.urn) {
+ throw new Error("Missing required property 'toRoleName'");
+ }
+ resourceInputs["currentGrants"] = args ? args.currentGrants : undefined;
+ resourceInputs["onRoleName"] = args ? args.onRoleName : undefined;
+ resourceInputs["toRoleName"] = args ? args.toRoleName : undefined;
+ }
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
+ super(RoleOwnershipGrant.__pulumiType, name, resourceInputs, opts);
+ }
+}
+
+/**
+ * Input properties used for looking up and filtering RoleOwnershipGrant resources.
+ */
+export interface RoleOwnershipGrantState {
+ /**
+ * Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ */
+ currentGrants?: pulumi.Input;
+ /**
+ * The name of the role ownership is granted on.
+ */
+ onRoleName?: pulumi.Input;
+ /**
+ * The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ */
+ toRoleName?: pulumi.Input;
+}
+
+/**
+ * The set of arguments for constructing a RoleOwnershipGrant resource.
+ */
+export interface RoleOwnershipGrantArgs {
+ /**
+ * Specifies whether to remove or transfer all existing outbound privileges on the object when ownership is transferred to a new role.
+ */
+ currentGrants?: pulumi.Input;
+ /**
+ * The name of the role ownership is granted on.
+ */
+ onRoleName: pulumi.Input;
+ /**
+ * The name of the role to grant ownership. Please ensure that the role that terraform is using is granted access.
+ */
+ toRoleName: pulumi.Input;
+}
diff --git a/sdk/nodejs/rowAccessPolicyGrant.ts b/sdk/nodejs/rowAccessPolicyGrant.ts
index 64b7cac4..83f90408 100644
--- a/sdk/nodejs/rowAccessPolicyGrant.ts
+++ b/sdk/nodejs/rowAccessPolicyGrant.ts
@@ -64,6 +64,11 @@ export class RowAccessPolicyGrant extends pulumi.CustomResource {
* The name of the database containing the row access policy on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* The privilege to grant on the row access policy.
*/
@@ -99,6 +104,7 @@ export class RowAccessPolicyGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as RowAccessPolicyGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
resourceInputs["rowAccessPolicyName"] = state ? state.rowAccessPolicyName : undefined;
@@ -116,6 +122,7 @@ export class RowAccessPolicyGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'schemaName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
resourceInputs["rowAccessPolicyName"] = args ? args.rowAccessPolicyName : undefined;
@@ -135,6 +142,11 @@ export interface RowAccessPolicyGrantState {
* The name of the database containing the row access policy on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The privilege to grant on the row access policy.
*/
@@ -165,6 +177,11 @@ export interface RowAccessPolicyGrantArgs {
* The name of the database containing the row access policy on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* The privilege to grant on the row access policy.
*/
diff --git a/sdk/nodejs/schemaGrant.ts b/sdk/nodejs/schemaGrant.ts
index 492b0556..c3959bc8 100644
--- a/sdk/nodejs/schemaGrant.ts
+++ b/sdk/nodejs/schemaGrant.ts
@@ -68,6 +68,11 @@ export class SchemaGrant extends pulumi.CustomResource {
* The name of the database containing the schema on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
*/
@@ -108,6 +113,7 @@ export class SchemaGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as SchemaGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -120,6 +126,7 @@ export class SchemaGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'databaseName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -140,6 +147,11 @@ export interface SchemaGrantState {
* The name of the database containing the schema on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
*/
@@ -175,6 +187,11 @@ export interface SchemaGrantArgs {
* The name of the database containing the schema on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true, apply this grant on all future schemas in the given database. The schema*name and shares fields must be unset in order to use on*future.
*/
diff --git a/sdk/nodejs/sequenceGrant.ts b/sdk/nodejs/sequenceGrant.ts
index 3cf38c13..2028bf57 100644
--- a/sdk/nodejs/sequenceGrant.ts
+++ b/sdk/nodejs/sequenceGrant.ts
@@ -65,6 +65,11 @@ export class SequenceGrant extends pulumi.CustomResource {
* The name of the database containing the current or future sequences on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
*/
@@ -104,6 +109,7 @@ export class SequenceGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as SequenceGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -119,6 +125,7 @@ export class SequenceGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'schemaName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -139,6 +146,11 @@ export interface SequenceGrantState {
* The name of the database containing the current or future sequences on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
*/
@@ -173,6 +185,11 @@ export interface SequenceGrantArgs {
* The name of the database containing the current or future sequences on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future sequences in the given schema. When this is true and no schema*name is provided apply this grant on all future sequences in the given database. The sequence*name field must be unset in order to use on*future.
*/
diff --git a/sdk/nodejs/stageGrant.ts b/sdk/nodejs/stageGrant.ts
index 7ed1ec4e..8d57fedd 100644
--- a/sdk/nodejs/stageGrant.ts
+++ b/sdk/nodejs/stageGrant.ts
@@ -69,6 +69,11 @@ export class StageGrant extends pulumi.CustomResource {
* The name of the database containing the current stage on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
*/
@@ -108,6 +113,7 @@ export class StageGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as StageGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -123,6 +129,7 @@ export class StageGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'schemaName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -143,6 +150,11 @@ export interface StageGrantState {
* The name of the database containing the current stage on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
*/
@@ -177,6 +189,11 @@ export interface StageGrantArgs {
* The name of the database containing the current stage on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future stages in the given schema. When this is true and no schema*name is provided apply this grant on all future stages in the given database. The stage*name field must be unset in order to use on*future.
*/
diff --git a/sdk/nodejs/streamGrant.ts b/sdk/nodejs/streamGrant.ts
index 78b37bde..45899236 100644
--- a/sdk/nodejs/streamGrant.ts
+++ b/sdk/nodejs/streamGrant.ts
@@ -65,6 +65,11 @@ export class StreamGrant extends pulumi.CustomResource {
* The name of the database containing the current or future streams on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
*/
@@ -104,6 +109,7 @@ export class StreamGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as StreamGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -119,6 +125,7 @@ export class StreamGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'schemaName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -139,6 +146,11 @@ export interface StreamGrantState {
* The name of the database containing the current or future streams on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
*/
@@ -173,6 +185,11 @@ export interface StreamGrantArgs {
* The name of the database containing the current or future streams on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future streams in the given schema. When this is true and no schema*name is provided apply this grant on all future streams in the given database. The stream*name field must be unset in order to use on*future.
*/
diff --git a/sdk/nodejs/tableGrant.ts b/sdk/nodejs/tableGrant.ts
index 3870dd5a..51234789 100644
--- a/sdk/nodejs/tableGrant.ts
+++ b/sdk/nodejs/tableGrant.ts
@@ -63,6 +63,11 @@ export class TableGrant extends pulumi.CustomResource {
* The name of the database containing the current or future tables on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
*/
@@ -106,6 +111,7 @@ export class TableGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as TableGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -119,6 +125,7 @@ export class TableGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'databaseName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -140,6 +147,11 @@ export interface TableGrantState {
* The name of the database containing the current or future tables on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
*/
@@ -178,6 +190,11 @@ export interface TableGrantArgs {
* The name of the database containing the current or future tables on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future tables in the given schema. When this is true and no schema*name is provided apply this grant on all future tables in the given database. The table*name and shares fields must be unset in order to use on*future.
*/
diff --git a/sdk/nodejs/taskGrant.ts b/sdk/nodejs/taskGrant.ts
index 71ba016a..fd8c2c2f 100644
--- a/sdk/nodejs/taskGrant.ts
+++ b/sdk/nodejs/taskGrant.ts
@@ -65,6 +65,11 @@ export class TaskGrant extends pulumi.CustomResource {
* The name of the database containing the current or future tasks on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
*/
@@ -104,6 +109,7 @@ export class TaskGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as TaskGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -119,6 +125,7 @@ export class TaskGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'schemaName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -139,6 +146,11 @@ export interface TaskGrantState {
* The name of the database containing the current or future tasks on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
*/
@@ -173,6 +185,11 @@ export interface TaskGrantArgs {
* The name of the database containing the current or future tasks on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future tasks in the given schema. When this is true and no schema*name is provided apply this grant on all future tasks in the given database. The task*name field must be unset in order to use on*future.
*/
diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json
index f8f6a130..dacceddb 100644
--- a/sdk/nodejs/tsconfig.json
+++ b/sdk/nodejs/tsconfig.json
@@ -73,6 +73,7 @@
"resourceMonitorGrant.ts",
"role.ts",
"roleGrants.ts",
+ "roleOwnershipGrant.ts",
"rowAccessPolicy.ts",
"rowAccessPolicyGrant.ts",
"samlIntegration.ts",
diff --git a/sdk/nodejs/viewGrant.ts b/sdk/nodejs/viewGrant.ts
index 10b3e7b3..f129338b 100644
--- a/sdk/nodejs/viewGrant.ts
+++ b/sdk/nodejs/viewGrant.ts
@@ -69,6 +69,11 @@ export class ViewGrant extends pulumi.CustomResource {
* The name of the database containing the current or future views on which to grant privileges.
*/
public readonly databaseName!: pulumi.Output;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ public readonly enableMultipleGrants!: pulumi.Output;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
*/
@@ -112,6 +117,7 @@ export class ViewGrant extends pulumi.CustomResource {
if (opts.id) {
const state = argsOrState as ViewGrantState | undefined;
resourceInputs["databaseName"] = state ? state.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = state ? state.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = state ? state.onFuture : undefined;
resourceInputs["privilege"] = state ? state.privilege : undefined;
resourceInputs["roles"] = state ? state.roles : undefined;
@@ -125,6 +131,7 @@ export class ViewGrant extends pulumi.CustomResource {
throw new Error("Missing required property 'databaseName'");
}
resourceInputs["databaseName"] = args ? args.databaseName : undefined;
+ resourceInputs["enableMultipleGrants"] = args ? args.enableMultipleGrants : undefined;
resourceInputs["onFuture"] = args ? args.onFuture : undefined;
resourceInputs["privilege"] = args ? args.privilege : undefined;
resourceInputs["roles"] = args ? args.roles : undefined;
@@ -146,6 +153,11 @@ export interface ViewGrantState {
* The name of the database containing the current or future views on which to grant privileges.
*/
databaseName?: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input;
/**
* When this is set to true and a schema*name is provided, apply this grant on all future views in the given schema. When this is true and no schema*name is provided apply this grant on all future views in the given database. The view*name and shares fields must be unset in order to use on*future.
*/
@@ -184,6 +196,11 @@ export interface ViewGrantArgs {
* The name of the database containing the current or future views on which to grant privileges.
*/
databaseName: pulumi.Input;
+ /**
+ * When this is set to true, multiple grants of the same type can be created. This will cause Terraform to not revoke
+ * grants applied to roles and objects outside Terraform.
+ */
+ enableMultipleGrants?: pulumi.Input