diff --git a/provider/cmd/pulumi-resource-stackit/bridge-metadata.json b/provider/cmd/pulumi-resource-stackit/bridge-metadata.json index 9dd6666..11ba1f7 100644 --- a/provider/cmd/pulumi-resource-stackit/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-stackit/bridge-metadata.json @@ -9,6 +9,9 @@ } } }, + "stackit_authorization_folder_role_assignment": { + "current": "stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment" + }, "stackit_authorization_organization_role_assignment": { "current": "stackit:index/authorizationOrganizationRoleAssignment:AuthorizationOrganizationRoleAssignment" }, diff --git a/provider/cmd/pulumi-resource-stackit/schema.json b/provider/cmd/pulumi-resource-stackit/schema.json index d4238c8..c8ddd79 100644 --- a/provider/cmd/pulumi-resource-stackit/schema.json +++ b/provider/cmd/pulumi-resource-stackit/schema.json @@ -6041,8 +6041,67 @@ "type": "object" } }, + "stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment": { + "description": "Folder Role Assignment resource schema.\n\n\u003e This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion.\n\n## Example Usage\n\n```terraform\nresource \"stackit_resourcemanager_folder\" \"example\" {\n name = \"example_folder\"\n owner_email = \"foo.bar@stackit.cloud\"\n # in this case a org-id\n parent_container_id = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"\n}\n\nresource \"stackit_authorization_folder_role_assignment\" \"fra\" {\n resource_id = stackit_resourcemanager_folder.example.folder_id\n role = \"reader\"\n subject = \"foo.bar@stackit.cloud\"\n}\n\n# Only use the import statement, if you want to import an existing folder role assignment\nimport {\n to = stackit_authorization_folder_role_assignment.import-example\n id = \"${var.folder_id},${var.folder_role_assignment},${var.folder_role_assignment_subject}\"\n}\n```\n", + "properties": { + "resourceId": { + "type": "string", + "description": "folder Resource to assign the role to.\n" + }, + "role": { + "type": "string", + "description": "Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions`\n" + }, + "subject": { + "type": "string", + "description": "Identifier of user, service account or client. Usually email address or name in case of clients\n" + } + }, + "required": [ + "resourceId", + "role", + "subject" + ], + "inputProperties": { + "resourceId": { + "type": "string", + "description": "folder Resource to assign the role to.\n" + }, + "role": { + "type": "string", + "description": "Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions`\n" + }, + "subject": { + "type": "string", + "description": "Identifier of user, service account or client. Usually email address or name in case of clients\n" + } + }, + "requiredInputs": [ + "resourceId", + "role", + "subject" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering AuthorizationFolderRoleAssignment resources.\n", + "properties": { + "resourceId": { + "type": "string", + "description": "folder Resource to assign the role to.\n" + }, + "role": { + "type": "string", + "description": "Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions`\n" + }, + "subject": { + "type": "string", + "description": "Identifier of user, service account or client. Usually email address or name in case of clients\n" + } + }, + "type": "object" + } + }, "stackit:index/authorizationOrganizationRoleAssignment:AuthorizationOrganizationRoleAssignment": { - "description": "organization Role Assignment resource schema.\n\n\u003e This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion.\n\n## Example Usage\n\n```terraform\nresource \"stackit_authorization_organization_role_assignment\" \"example\" {\n resource_id = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"\n role = \"owner\"\n subject = \"john.doe@stackit.cloud\"\n}\n\n# Only use the import statement, if you want to import an existing organization role assignment\nimport {\n to = stackit_authorization_organization_role_assignment.import-example\n id = \"${var.organization_id},${var.org_role_assignment_role},${var.org_role_assignment_subject}\"\n}\n```\n", + "description": "Organization Role Assignment resource schema.\n\n\u003e This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion.\n\n## Example Usage\n\n```terraform\nresource \"stackit_authorization_organization_role_assignment\" \"example\" {\n resource_id = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"\n role = \"owner\"\n subject = \"john.doe@stackit.cloud\"\n}\n\n# Only use the import statement, if you want to import an existing organization role assignment\nimport {\n to = stackit_authorization_organization_role_assignment.import-example\n id = \"${var.organization_id},${var.org_role_assignment_role},${var.org_role_assignment_subject}\"\n}\n```\n", "properties": { "resourceId": { "type": "string", @@ -6050,7 +6109,7 @@ }, "role": { "type": "string", - "description": "Role to be assigned\n" + "description": "Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions`\n" }, "subject": { "type": "string", @@ -6069,7 +6128,7 @@ }, "role": { "type": "string", - "description": "Role to be assigned\n" + "description": "Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions`\n" }, "subject": { "type": "string", @@ -6090,7 +6149,7 @@ }, "role": { "type": "string", - "description": "Role to be assigned\n" + "description": "Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions`\n" }, "subject": { "type": "string", @@ -6101,7 +6160,7 @@ } }, "stackit:index/authorizationProjectRoleAssignment:AuthorizationProjectRoleAssignment": { - "description": "project Role Assignment resource schema.\n\n\u003e This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion.\n\n## Example Usage\n\n```terraform\nresource \"stackit_authorization_project_role_assignment\" \"example\" {\n resource_id = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"\n role = \"owner\"\n subject = \"john.doe@stackit.cloud\"\n}\n\n# Only use the import statement, if you want to import an existing project role assignment\nimport {\n to = stackit_authorization_project_role_assignment.import-example\n id = \"${var.project_id},${var.project_role_assignment_role},${var.project_role_assignment_subject}\"\n}\n```\n", + "description": "Project Role Assignment resource schema.\n\n\u003e This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion.\n\n## Example Usage\n\n```terraform\nresource \"stackit_resourcemanager_project\" \"example\" {\n name = \"example_project\"\n owner_email = \"foo.bar@stackit.cloud\"\n # in this case a folder or a org-id\n parent_container_id = \"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"\n}\n\nresource \"stackit_authorization_project_role_assignment\" \"pra\" {\n resource_id = stackit_resourcemanager_project.example.folder_id\n role = \"reader\"\n subject = \"foo.bar@stackit.cloud\"\n}\n\n# Only use the import statement, if you want to import an existing project role assignment\nimport {\n to = stackit_authorization_project_role_assignment.import-example\n id = \"${var.project_id},${var.project_role_assignment_role},${var.project_role_assignment_subject}\"\n}\n```\n", "properties": { "resourceId": { "type": "string", @@ -6109,7 +6168,7 @@ }, "role": { "type": "string", - "description": "Role to be assigned\n" + "description": "Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions`\n" }, "subject": { "type": "string", @@ -6128,7 +6187,7 @@ }, "role": { "type": "string", - "description": "Role to be assigned\n" + "description": "Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions`\n" }, "subject": { "type": "string", @@ -6149,7 +6208,7 @@ }, "role": { "type": "string", - "description": "Role to be assigned\n" + "description": "Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions`\n" }, "subject": { "type": "string", diff --git a/provider/go.mod b/provider/go.mod index de472dc..8a18425 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -152,15 +152,15 @@ require ( github.com/spf13/cast v1.5.0 // indirect github.com/spf13/cobra v1.10.1 // indirect github.com/spf13/pflag v1.0.10 // indirect - github.com/stackitcloud/stackit-sdk-go/core v0.20.1 // indirect - github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.0 // indirect + github.com/stackitcloud/stackit-sdk-go/core v0.21.0 // indirect + github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/edge v0.4.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/git v0.10.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/kms v1.2.0 // indirect - github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.0 // indirect + github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/logs v0.4.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/mariadb v0.25.3 // indirect @@ -175,14 +175,14 @@ require ( github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.18.2 // indirect github.com/stackitcloud/stackit-sdk-go/services/scf v0.4.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.14.0 // indirect - github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.5 // indirect + github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.6 // indirect github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.4 // indirect github.com/stackitcloud/stackit-sdk-go/services/sfs v0.2.0 // indirect github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.0 // indirect - github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.0 // indirect - github.com/stackitcloud/terraform-provider-stackit v0.79.0 // indirect + github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.1 // indirect + github.com/stackitcloud/terraform-provider-stackit v0.79.1 // indirect github.com/stretchr/objx v0.5.2 // indirect github.com/teambition/rrule-go v1.8.2 // indirect github.com/teekennedy/goldmark-markdown v0.3.0 // indirect diff --git a/provider/go.sum b/provider/go.sum index 0459bed..d16bbb4 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1340,10 +1340,10 @@ github.com/stackitcloud/pulumi-stackit/provider/pkg/version v0.0.3 h1:aB0mIxvFvZ github.com/stackitcloud/pulumi-stackit/provider/pkg/version v0.0.3/go.mod h1:AYaRzbN02xCp5DnA2tbc/5pnFxHvY12bp3KftVkZhOE= github.com/stackitcloud/pulumi-stackit/provider/shim v0.0.3 h1:aoZCTIAaJkW7Cmks6L/ftrE/J1bCIrVoXruTzdC0ixs= github.com/stackitcloud/pulumi-stackit/provider/shim v0.0.3/go.mod h1:F4bSBR3AuonR/lLPO4EuZY7wmd1AVxOP+hvfI7Jdqs0= -github.com/stackitcloud/stackit-sdk-go/core v0.20.1 h1:odiuhhRXmxvEvnVTeZSN9u98edvw2Cd3DcnkepncP3M= -github.com/stackitcloud/stackit-sdk-go/core v0.20.1/go.mod h1:fqto7M82ynGhEnpZU6VkQKYWYoFG5goC076JWXTUPRQ= -github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.0 h1:4YFY5PG4vP/NiEP1uxCwh+kQHEU7iHG6syuFD7NPqcw= -github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.0/go.mod h1:v4xdRA5P8Vr+zLdHh+ODgspN0WJG04wLImIJoYjrPK4= +github.com/stackitcloud/stackit-sdk-go/core v0.21.0 h1:QXZqiaO7U/4IpTkJfzt4dt6QxJzG2uUS12mBnHpYNik= +github.com/stackitcloud/stackit-sdk-go/core v0.21.0/go.mod h1:fqto7M82ynGhEnpZU6VkQKYWYoFG5goC076JWXTUPRQ= +github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.1 h1:gMAZURshmPGIIkLbZQYq+wvr+tAGa5Jdd2xyTpFtGUo= +github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.1/go.mod h1:/gj9PeF6294awSPeYokbHfZbcWK+6Dr4DQO2Z37eYQU= github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.1 h1:PiNC8VmLqi1WUnBSPefjDXThD43Fvb87p+Y6H8onGA0= github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.1/go.mod h1:Nnfe/Zv4Z8F56Ljw/MfXjL0/2Ajia4bGuL/CZuvIXk8= github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.3 h1:KD/FxU/cJIzfyMvwiOvTlSWq87ISENpHNmw/quznGnw= @@ -1356,8 +1356,8 @@ github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.0 h1:U/x0tc487X9msMS5y github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.0/go.mod h1:6+5+RCDfU7eQN3+/SGdOtx7Bq9dEa2FrHz/jflgY1M4= github.com/stackitcloud/stackit-sdk-go/services/kms v1.2.0 h1:Ar2n9GKmrTN80G/Ta1R+fL5aX5nEoxL6ODVJl3emzho= github.com/stackitcloud/stackit-sdk-go/services/kms v1.2.0/go.mod h1:sHMFoYvVrkRZcH13DkLvp48nW+ssRVVVuwqJHDGpa5M= -github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.0 h1:ZyaB4jL71p+FWI/cXgP+p6t4iw1oAeGbLLOz4cs3dmI= -github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.0/go.mod h1:dYmNdSNDKUG+E0SwuFWu+c8CuMBF/l6w1bdzAHxQao0= +github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.1 h1:2UKKtBg+E5IFUcZAkRyKz1Km+tsA//zGjFQjVWwaXss= +github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.1/go.mod h1:3/7s4cDhMBY7u84XjD9aUm649aoPhsBsjfPG/WDUujY= github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.3 h1:fUQLWs2WsXFh+FtFDYOm1kv/gJrGBZLjhVOXJOuYfFY= github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.3/go.mod h1:305j9bvzJ+3c4csOw4SUfLSSxRbkpL0osbvqMI89FeM= github.com/stackitcloud/stackit-sdk-go/services/logs v0.4.0 h1:EOUVSKvu/m5N+psxeB69IIpANev/jw6HIw2yfh/HO7w= @@ -1386,8 +1386,8 @@ github.com/stackitcloud/stackit-sdk-go/services/scf v0.4.0 h1:yw6UnfDlUq6//jdOW8 github.com/stackitcloud/stackit-sdk-go/services/scf v0.4.0/go.mod h1:eVylZQs1NCNgfQl4Cb+pJoN6bGUg/tOpC5UZiAN36pU= github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.14.0 h1:8cFo0UG2r9kWwUAHRBTAG5wEt4G80+wkWdjQW6DhU6Y= github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.14.0/go.mod h1:dMBt/b/LXfXTDLQTCW6PRhBlbl41q7XS+5mAyBezSJk= -github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.5 h1:pAoqz4K17ZWcLusu7Dxkx3HGQAIYCk7SmZeAu9HHUrQ= -github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.5/go.mod h1:MBlzqmewliF1LKeOBdOuT+aQrtc3y7p1Kd1fWkjecKQ= +github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.6 h1:9idmXyZVnshvF03lpftpvRhzfiaIS4gQMLIFqU5kRr0= +github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.6/go.mod h1:I4j+7qq2zJjN1yoPTJCNmfK1JJJnB+uOTwvHUX7+Xp0= github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.3 h1:1gLKXD91qOYUpackMuu0PdRwrm2Z8vFK+k8H7SF0xbg= github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.3/go.mod h1:V34YusCRsq/3bJ/HxUk0wslLjVWWE/QVe70AZ+XrDPE= github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.3 h1:XV3pPXpdvQjR5Z90FFutU4iqCHfejDYQAL840Y4ztLM= @@ -1398,10 +1398,10 @@ github.com/stackitcloud/stackit-sdk-go/services/sfs v0.2.0 h1:DRp1p0Gb1YZSnFXgki github.com/stackitcloud/stackit-sdk-go/services/sfs v0.2.0/go.mod h1:XHOtGgBwwCqPSoQt2ojIRb/BeOd4kICwb9RuMXXFGt8= github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.0 h1:Dab1jzN0u9c67lvELoWf1RuagjO3eUBRytoX8SYL8Zs= github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.0/go.mod h1:NzcTU5GGlUF6Lys3Ra7ylRj4ZKxJr3f/29/yoE5tjPI= -github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.0 h1:KgIRTw4gpxx8qoiaLGLbXPVDcBgCxPl60gigw+tizYc= -github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.0/go.mod h1:fd13ANCU/Pye8uDd/6E0I605+6PYfHuVIQpPEK2Ph6c= -github.com/stackitcloud/terraform-provider-stackit v0.79.0 h1:h2hn+M6ARQR3GRHz3S2YatV2foknbuf3BAtybJ8/a58= -github.com/stackitcloud/terraform-provider-stackit v0.79.0/go.mod h1:cn501lAiwMFdVic3FfLzHyORFndwioloi8BeWNrWYYw= +github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.1 h1:6MJdy1xmdE+uOo/F8mR5HSldjPSHpdhwuqS3u9m2EWQ= +github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.1/go.mod h1:XLr3ZfrT1g8ZZMm7A6RXOPBuhBkikdUN2o/+/Y+Hu+g= +github.com/stackitcloud/terraform-provider-stackit v0.79.1 h1:xAzqWIyqNYMJo/ilL6wUTLnyLqfRF3nqN5lxVWGAPnE= +github.com/stackitcloud/terraform-provider-stackit v0.79.1/go.mod h1:38qCrxpvHerojyzdZ0PndETEr8VwgXiZXqPsk6VphQk= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= diff --git a/provider/shim/go.mod b/provider/shim/go.mod index 02a527e..d1dedb1 100644 --- a/provider/shim/go.mod +++ b/provider/shim/go.mod @@ -4,7 +4,7 @@ go 1.24.0 toolchain go1.24.2 -require github.com/stackitcloud/terraform-provider-stackit v0.79.0 +require github.com/stackitcloud/terraform-provider-stackit v0.79.1 require ( github.com/stackitcloud/stackit-sdk-go/services/edge v0.4.0 // indirect @@ -28,13 +28,13 @@ require ( github.com/mattn/go-colorable v0.1.14 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mitchellh/go-testing-interface v1.14.1 // indirect - github.com/stackitcloud/stackit-sdk-go/core v0.20.1 // indirect - github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.0 // indirect + github.com/stackitcloud/stackit-sdk-go/core v0.21.0 // indirect + github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/git v0.10.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.0 // indirect - github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.0 // indirect + github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.1 // indirect github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/mariadb v0.25.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/modelserving v0.6.2 // indirect @@ -47,12 +47,12 @@ require ( github.com/stackitcloud/stackit-sdk-go/services/redis v0.25.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.18.2 // indirect github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.14.0 // indirect - github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.5 // indirect + github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.6 // indirect github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.3 // indirect github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.4 // indirect github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.0 // indirect - github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.0 // indirect + github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.1 // indirect github.com/teambition/rrule-go v1.8.2 // indirect github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect diff --git a/provider/shim/go.sum b/provider/shim/go.sum index d226f76..0360a4f 100644 --- a/provider/shim/go.sum +++ b/provider/shim/go.sum @@ -82,10 +82,10 @@ github.com/oklog/run v1.2.0 h1:O8x3yXwah4A73hJdlrwo/2X6J62gE5qTMusH0dvz60E= github.com/oklog/run v1.2.0/go.mod h1:mgDbKRSwPhJfesJ4PntqFUbKQRZ50NgmZTSPlFA0YFk= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= -github.com/stackitcloud/stackit-sdk-go/core v0.20.1 h1:odiuhhRXmxvEvnVTeZSN9u98edvw2Cd3DcnkepncP3M= -github.com/stackitcloud/stackit-sdk-go/core v0.20.1/go.mod h1:fqto7M82ynGhEnpZU6VkQKYWYoFG5goC076JWXTUPRQ= -github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.0 h1:4YFY5PG4vP/NiEP1uxCwh+kQHEU7iHG6syuFD7NPqcw= -github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.0/go.mod h1:v4xdRA5P8Vr+zLdHh+ODgspN0WJG04wLImIJoYjrPK4= +github.com/stackitcloud/stackit-sdk-go/core v0.21.0 h1:QXZqiaO7U/4IpTkJfzt4dt6QxJzG2uUS12mBnHpYNik= +github.com/stackitcloud/stackit-sdk-go/core v0.21.0/go.mod h1:fqto7M82ynGhEnpZU6VkQKYWYoFG5goC076JWXTUPRQ= +github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.1 h1:gMAZURshmPGIIkLbZQYq+wvr+tAGa5Jdd2xyTpFtGUo= +github.com/stackitcloud/stackit-sdk-go/services/authorization v0.11.1/go.mod h1:/gj9PeF6294awSPeYokbHfZbcWK+6Dr4DQO2Z37eYQU= github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.1 h1:PiNC8VmLqi1WUnBSPefjDXThD43Fvb87p+Y6H8onGA0= github.com/stackitcloud/stackit-sdk-go/services/cdn v1.9.1/go.mod h1:Nnfe/Zv4Z8F56Ljw/MfXjL0/2Ajia4bGuL/CZuvIXk8= github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.3 h1:KD/FxU/cJIzfyMvwiOvTlSWq87ISENpHNmw/quznGnw= @@ -98,8 +98,8 @@ github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.0 h1:U/x0tc487X9msMS5y github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.0/go.mod h1:6+5+RCDfU7eQN3+/SGdOtx7Bq9dEa2FrHz/jflgY1M4= github.com/stackitcloud/stackit-sdk-go/services/kms v1.2.0 h1:Ar2n9GKmrTN80G/Ta1R+fL5aX5nEoxL6ODVJl3emzho= github.com/stackitcloud/stackit-sdk-go/services/kms v1.2.0/go.mod h1:sHMFoYvVrkRZcH13DkLvp48nW+ssRVVVuwqJHDGpa5M= -github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.0 h1:ZyaB4jL71p+FWI/cXgP+p6t4iw1oAeGbLLOz4cs3dmI= -github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.0/go.mod h1:dYmNdSNDKUG+E0SwuFWu+c8CuMBF/l6w1bdzAHxQao0= +github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.1 h1:2UKKtBg+E5IFUcZAkRyKz1Km+tsA//zGjFQjVWwaXss= +github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.7.1/go.mod h1:3/7s4cDhMBY7u84XjD9aUm649aoPhsBsjfPG/WDUujY= github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.3 h1:fUQLWs2WsXFh+FtFDYOm1kv/gJrGBZLjhVOXJOuYfFY= github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.3/go.mod h1:305j9bvzJ+3c4csOw4SUfLSSxRbkpL0osbvqMI89FeM= github.com/stackitcloud/stackit-sdk-go/services/logs v0.4.0 h1:EOUVSKvu/m5N+psxeB69IIpANev/jw6HIw2yfh/HO7w= @@ -128,8 +128,8 @@ github.com/stackitcloud/stackit-sdk-go/services/scf v0.4.0 h1:yw6UnfDlUq6//jdOW8 github.com/stackitcloud/stackit-sdk-go/services/scf v0.4.0/go.mod h1:eVylZQs1NCNgfQl4Cb+pJoN6bGUg/tOpC5UZiAN36pU= github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.14.0 h1:8cFo0UG2r9kWwUAHRBTAG5wEt4G80+wkWdjQW6DhU6Y= github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.14.0/go.mod h1:dMBt/b/LXfXTDLQTCW6PRhBlbl41q7XS+5mAyBezSJk= -github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.5 h1:pAoqz4K17ZWcLusu7Dxkx3HGQAIYCk7SmZeAu9HHUrQ= -github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.5/go.mod h1:MBlzqmewliF1LKeOBdOuT+aQrtc3y7p1Kd1fWkjecKQ= +github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.6 h1:9idmXyZVnshvF03lpftpvRhzfiaIS4gQMLIFqU5kRr0= +github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.6/go.mod h1:I4j+7qq2zJjN1yoPTJCNmfK1JJJnB+uOTwvHUX7+Xp0= github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.3 h1:1gLKXD91qOYUpackMuu0PdRwrm2Z8vFK+k8H7SF0xbg= github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.3/go.mod h1:V34YusCRsq/3bJ/HxUk0wslLjVWWE/QVe70AZ+XrDPE= github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.3 h1:XV3pPXpdvQjR5Z90FFutU4iqCHfejDYQAL840Y4ztLM= @@ -140,10 +140,10 @@ github.com/stackitcloud/stackit-sdk-go/services/sfs v0.2.0 h1:DRp1p0Gb1YZSnFXgki github.com/stackitcloud/stackit-sdk-go/services/sfs v0.2.0/go.mod h1:XHOtGgBwwCqPSoQt2ojIRb/BeOd4kICwb9RuMXXFGt8= github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.0 h1:Dab1jzN0u9c67lvELoWf1RuagjO3eUBRytoX8SYL8Zs= github.com/stackitcloud/stackit-sdk-go/services/ske v1.6.0/go.mod h1:NzcTU5GGlUF6Lys3Ra7ylRj4ZKxJr3f/29/yoE5tjPI= -github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.0 h1:KgIRTw4gpxx8qoiaLGLbXPVDcBgCxPl60gigw+tizYc= -github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.0/go.mod h1:fd13ANCU/Pye8uDd/6E0I605+6PYfHuVIQpPEK2Ph6c= -github.com/stackitcloud/terraform-provider-stackit v0.79.0 h1:h2hn+M6ARQR3GRHz3S2YatV2foknbuf3BAtybJ8/a58= -github.com/stackitcloud/terraform-provider-stackit v0.79.0/go.mod h1:cn501lAiwMFdVic3FfLzHyORFndwioloi8BeWNrWYYw= +github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.1 h1:6MJdy1xmdE+uOo/F8mR5HSldjPSHpdhwuqS3u9m2EWQ= +github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.4.1/go.mod h1:XLr3ZfrT1g8ZZMm7A6RXOPBuhBkikdUN2o/+/Y+Hu+g= +github.com/stackitcloud/terraform-provider-stackit v0.79.1 h1:xAzqWIyqNYMJo/ilL6wUTLnyLqfRF3nqN5lxVWGAPnE= +github.com/stackitcloud/terraform-provider-stackit v0.79.1/go.mod h1:38qCrxpvHerojyzdZ0PndETEr8VwgXiZXqPsk6VphQk= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= diff --git a/sdk/dotnet/AuthorizationFolderRoleAssignment.cs b/sdk/dotnet/AuthorizationFolderRoleAssignment.cs new file mode 100644 index 0000000..9f81b97 --- /dev/null +++ b/sdk/dotnet/AuthorizationFolderRoleAssignment.cs @@ -0,0 +1,136 @@ +// *** WARNING: this file was generated by pulumi-language-dotnet. *** +// *** 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.Stackit +{ + /// + /// Folder Role Assignment resource schema. + /// + /// > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. + /// + /// ## Example Usage + /// + [StackitResourceType("stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment")] + public partial class AuthorizationFolderRoleAssignment : global::Pulumi.CustomResource + { + /// + /// folder Resource to assign the role to. + /// + [Output("resourceId")] + public Output ResourceId { get; private set; } = null!; + + /// + /// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + /// + [Output("role")] + public Output Role { get; private set; } = null!; + + /// + /// Identifier of user, service account or client. Usually email address or name in case of clients + /// + [Output("subject")] + public Output Subject { get; private set; } = null!; + + + /// + /// Create a AuthorizationFolderRoleAssignment 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 AuthorizationFolderRoleAssignment(string name, AuthorizationFolderRoleAssignmentArgs args, CustomResourceOptions? options = null) + : base("stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment", name, args ?? new AuthorizationFolderRoleAssignmentArgs(), MakeResourceOptions(options, "")) + { + } + + private AuthorizationFolderRoleAssignment(string name, Input id, AuthorizationFolderRoleAssignmentState? state = null, CustomResourceOptions? options = null) + : base("stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + PluginDownloadURL = "github://api.github.com/stackitcloud/pulumi-stackit", + }; + 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 AuthorizationFolderRoleAssignment 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 AuthorizationFolderRoleAssignment Get(string name, Input id, AuthorizationFolderRoleAssignmentState? state = null, CustomResourceOptions? options = null) + { + return new AuthorizationFolderRoleAssignment(name, id, state, options); + } + } + + public sealed class AuthorizationFolderRoleAssignmentArgs : global::Pulumi.ResourceArgs + { + /// + /// folder Resource to assign the role to. + /// + [Input("resourceId", required: true)] + public Input ResourceId { get; set; } = null!; + + /// + /// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + /// + [Input("role", required: true)] + public Input Role { get; set; } = null!; + + /// + /// Identifier of user, service account or client. Usually email address or name in case of clients + /// + [Input("subject", required: true)] + public Input Subject { get; set; } = null!; + + public AuthorizationFolderRoleAssignmentArgs() + { + } + public static new AuthorizationFolderRoleAssignmentArgs Empty => new AuthorizationFolderRoleAssignmentArgs(); + } + + public sealed class AuthorizationFolderRoleAssignmentState : global::Pulumi.ResourceArgs + { + /// + /// folder Resource to assign the role to. + /// + [Input("resourceId")] + public Input? ResourceId { get; set; } + + /// + /// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + /// + [Input("role")] + public Input? Role { get; set; } + + /// + /// Identifier of user, service account or client. Usually email address or name in case of clients + /// + [Input("subject")] + public Input? Subject { get; set; } + + public AuthorizationFolderRoleAssignmentState() + { + } + public static new AuthorizationFolderRoleAssignmentState Empty => new AuthorizationFolderRoleAssignmentState(); + } +} diff --git a/sdk/dotnet/AuthorizationOrganizationRoleAssignment.cs b/sdk/dotnet/AuthorizationOrganizationRoleAssignment.cs index 45b8b84..5f1d272 100644 --- a/sdk/dotnet/AuthorizationOrganizationRoleAssignment.cs +++ b/sdk/dotnet/AuthorizationOrganizationRoleAssignment.cs @@ -10,7 +10,7 @@ namespace Pulumi.Stackit { /// - /// organization Role Assignment resource schema. + /// Organization Role Assignment resource schema. /// /// > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. /// @@ -26,7 +26,7 @@ public partial class AuthorizationOrganizationRoleAssignment : global::Pulumi.Cu public Output ResourceId { get; private set; } = null!; /// - /// Role to be assigned + /// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` /// [Output("role")] public Output Role { get; private set; } = null!; @@ -91,7 +91,7 @@ public sealed class AuthorizationOrganizationRoleAssignmentArgs : global::Pulumi public Input ResourceId { get; set; } = null!; /// - /// Role to be assigned + /// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` /// [Input("role", required: true)] public Input Role { get; set; } = null!; @@ -117,7 +117,7 @@ public sealed class AuthorizationOrganizationRoleAssignmentState : global::Pulum public Input? ResourceId { get; set; } /// - /// Role to be assigned + /// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` /// [Input("role")] public Input? Role { get; set; } diff --git a/sdk/dotnet/AuthorizationProjectRoleAssignment.cs b/sdk/dotnet/AuthorizationProjectRoleAssignment.cs index 6a01224..1ce3033 100644 --- a/sdk/dotnet/AuthorizationProjectRoleAssignment.cs +++ b/sdk/dotnet/AuthorizationProjectRoleAssignment.cs @@ -10,7 +10,7 @@ namespace Pulumi.Stackit { /// - /// project Role Assignment resource schema. + /// Project Role Assignment resource schema. /// /// > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. /// @@ -26,7 +26,7 @@ public partial class AuthorizationProjectRoleAssignment : global::Pulumi.CustomR public Output ResourceId { get; private set; } = null!; /// - /// Role to be assigned + /// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` /// [Output("role")] public Output Role { get; private set; } = null!; @@ -91,7 +91,7 @@ public sealed class AuthorizationProjectRoleAssignmentArgs : global::Pulumi.Reso public Input ResourceId { get; set; } = null!; /// - /// Role to be assigned + /// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` /// [Input("role", required: true)] public Input Role { get; set; } = null!; @@ -117,7 +117,7 @@ public sealed class AuthorizationProjectRoleAssignmentState : global::Pulumi.Res public Input? ResourceId { get; set; } /// - /// Role to be assigned + /// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` /// [Input("role")] public Input? Role { get; set; } diff --git a/sdk/go/stackit/authorizationFolderRoleAssignment.go b/sdk/go/stackit/authorizationFolderRoleAssignment.go new file mode 100644 index 0000000..d1d6d47 --- /dev/null +++ b/sdk/go/stackit/authorizationFolderRoleAssignment.go @@ -0,0 +1,259 @@ +// Code generated by pulumi-language-go DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package stackit + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/stackitcloud/pulumi-stackit/sdk/go/stackit/internal" +) + +// Folder Role Assignment resource schema. +// +// > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. +// +// ## Example Usage +type AuthorizationFolderRoleAssignment struct { + pulumi.CustomResourceState + + // folder Resource to assign the role to. + ResourceId pulumi.StringOutput `pulumi:"resourceId"` + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + Role pulumi.StringOutput `pulumi:"role"` + // Identifier of user, service account or client. Usually email address or name in case of clients + Subject pulumi.StringOutput `pulumi:"subject"` +} + +// NewAuthorizationFolderRoleAssignment registers a new resource with the given unique name, arguments, and options. +func NewAuthorizationFolderRoleAssignment(ctx *pulumi.Context, + name string, args *AuthorizationFolderRoleAssignmentArgs, opts ...pulumi.ResourceOption) (*AuthorizationFolderRoleAssignment, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.ResourceId == nil { + return nil, errors.New("invalid value for required argument 'ResourceId'") + } + if args.Role == nil { + return nil, errors.New("invalid value for required argument 'Role'") + } + if args.Subject == nil { + return nil, errors.New("invalid value for required argument 'Subject'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource AuthorizationFolderRoleAssignment + err := ctx.RegisterResource("stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetAuthorizationFolderRoleAssignment gets an existing AuthorizationFolderRoleAssignment 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 GetAuthorizationFolderRoleAssignment(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *AuthorizationFolderRoleAssignmentState, opts ...pulumi.ResourceOption) (*AuthorizationFolderRoleAssignment, error) { + var resource AuthorizationFolderRoleAssignment + err := ctx.ReadResource("stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering AuthorizationFolderRoleAssignment resources. +type authorizationFolderRoleAssignmentState struct { + // folder Resource to assign the role to. + ResourceId *string `pulumi:"resourceId"` + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + Role *string `pulumi:"role"` + // Identifier of user, service account or client. Usually email address or name in case of clients + Subject *string `pulumi:"subject"` +} + +type AuthorizationFolderRoleAssignmentState struct { + // folder Resource to assign the role to. + ResourceId pulumi.StringPtrInput + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + Role pulumi.StringPtrInput + // Identifier of user, service account or client. Usually email address or name in case of clients + Subject pulumi.StringPtrInput +} + +func (AuthorizationFolderRoleAssignmentState) ElementType() reflect.Type { + return reflect.TypeOf((*authorizationFolderRoleAssignmentState)(nil)).Elem() +} + +type authorizationFolderRoleAssignmentArgs struct { + // folder Resource to assign the role to. + ResourceId string `pulumi:"resourceId"` + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + Role string `pulumi:"role"` + // Identifier of user, service account or client. Usually email address or name in case of clients + Subject string `pulumi:"subject"` +} + +// The set of arguments for constructing a AuthorizationFolderRoleAssignment resource. +type AuthorizationFolderRoleAssignmentArgs struct { + // folder Resource to assign the role to. + ResourceId pulumi.StringInput + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + Role pulumi.StringInput + // Identifier of user, service account or client. Usually email address or name in case of clients + Subject pulumi.StringInput +} + +func (AuthorizationFolderRoleAssignmentArgs) ElementType() reflect.Type { + return reflect.TypeOf((*authorizationFolderRoleAssignmentArgs)(nil)).Elem() +} + +type AuthorizationFolderRoleAssignmentInput interface { + pulumi.Input + + ToAuthorizationFolderRoleAssignmentOutput() AuthorizationFolderRoleAssignmentOutput + ToAuthorizationFolderRoleAssignmentOutputWithContext(ctx context.Context) AuthorizationFolderRoleAssignmentOutput +} + +func (*AuthorizationFolderRoleAssignment) ElementType() reflect.Type { + return reflect.TypeOf((**AuthorizationFolderRoleAssignment)(nil)).Elem() +} + +func (i *AuthorizationFolderRoleAssignment) ToAuthorizationFolderRoleAssignmentOutput() AuthorizationFolderRoleAssignmentOutput { + return i.ToAuthorizationFolderRoleAssignmentOutputWithContext(context.Background()) +} + +func (i *AuthorizationFolderRoleAssignment) ToAuthorizationFolderRoleAssignmentOutputWithContext(ctx context.Context) AuthorizationFolderRoleAssignmentOutput { + return pulumi.ToOutputWithContext(ctx, i).(AuthorizationFolderRoleAssignmentOutput) +} + +// AuthorizationFolderRoleAssignmentArrayInput is an input type that accepts AuthorizationFolderRoleAssignmentArray and AuthorizationFolderRoleAssignmentArrayOutput values. +// You can construct a concrete instance of `AuthorizationFolderRoleAssignmentArrayInput` via: +// +// AuthorizationFolderRoleAssignmentArray{ AuthorizationFolderRoleAssignmentArgs{...} } +type AuthorizationFolderRoleAssignmentArrayInput interface { + pulumi.Input + + ToAuthorizationFolderRoleAssignmentArrayOutput() AuthorizationFolderRoleAssignmentArrayOutput + ToAuthorizationFolderRoleAssignmentArrayOutputWithContext(context.Context) AuthorizationFolderRoleAssignmentArrayOutput +} + +type AuthorizationFolderRoleAssignmentArray []AuthorizationFolderRoleAssignmentInput + +func (AuthorizationFolderRoleAssignmentArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*AuthorizationFolderRoleAssignment)(nil)).Elem() +} + +func (i AuthorizationFolderRoleAssignmentArray) ToAuthorizationFolderRoleAssignmentArrayOutput() AuthorizationFolderRoleAssignmentArrayOutput { + return i.ToAuthorizationFolderRoleAssignmentArrayOutputWithContext(context.Background()) +} + +func (i AuthorizationFolderRoleAssignmentArray) ToAuthorizationFolderRoleAssignmentArrayOutputWithContext(ctx context.Context) AuthorizationFolderRoleAssignmentArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(AuthorizationFolderRoleAssignmentArrayOutput) +} + +// AuthorizationFolderRoleAssignmentMapInput is an input type that accepts AuthorizationFolderRoleAssignmentMap and AuthorizationFolderRoleAssignmentMapOutput values. +// You can construct a concrete instance of `AuthorizationFolderRoleAssignmentMapInput` via: +// +// AuthorizationFolderRoleAssignmentMap{ "key": AuthorizationFolderRoleAssignmentArgs{...} } +type AuthorizationFolderRoleAssignmentMapInput interface { + pulumi.Input + + ToAuthorizationFolderRoleAssignmentMapOutput() AuthorizationFolderRoleAssignmentMapOutput + ToAuthorizationFolderRoleAssignmentMapOutputWithContext(context.Context) AuthorizationFolderRoleAssignmentMapOutput +} + +type AuthorizationFolderRoleAssignmentMap map[string]AuthorizationFolderRoleAssignmentInput + +func (AuthorizationFolderRoleAssignmentMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*AuthorizationFolderRoleAssignment)(nil)).Elem() +} + +func (i AuthorizationFolderRoleAssignmentMap) ToAuthorizationFolderRoleAssignmentMapOutput() AuthorizationFolderRoleAssignmentMapOutput { + return i.ToAuthorizationFolderRoleAssignmentMapOutputWithContext(context.Background()) +} + +func (i AuthorizationFolderRoleAssignmentMap) ToAuthorizationFolderRoleAssignmentMapOutputWithContext(ctx context.Context) AuthorizationFolderRoleAssignmentMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(AuthorizationFolderRoleAssignmentMapOutput) +} + +type AuthorizationFolderRoleAssignmentOutput struct{ *pulumi.OutputState } + +func (AuthorizationFolderRoleAssignmentOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AuthorizationFolderRoleAssignment)(nil)).Elem() +} + +func (o AuthorizationFolderRoleAssignmentOutput) ToAuthorizationFolderRoleAssignmentOutput() AuthorizationFolderRoleAssignmentOutput { + return o +} + +func (o AuthorizationFolderRoleAssignmentOutput) ToAuthorizationFolderRoleAssignmentOutputWithContext(ctx context.Context) AuthorizationFolderRoleAssignmentOutput { + return o +} + +// folder Resource to assign the role to. +func (o AuthorizationFolderRoleAssignmentOutput) ResourceId() pulumi.StringOutput { + return o.ApplyT(func(v *AuthorizationFolderRoleAssignment) pulumi.StringOutput { return v.ResourceId }).(pulumi.StringOutput) +} + +// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` +func (o AuthorizationFolderRoleAssignmentOutput) Role() pulumi.StringOutput { + return o.ApplyT(func(v *AuthorizationFolderRoleAssignment) pulumi.StringOutput { return v.Role }).(pulumi.StringOutput) +} + +// Identifier of user, service account or client. Usually email address or name in case of clients +func (o AuthorizationFolderRoleAssignmentOutput) Subject() pulumi.StringOutput { + return o.ApplyT(func(v *AuthorizationFolderRoleAssignment) pulumi.StringOutput { return v.Subject }).(pulumi.StringOutput) +} + +type AuthorizationFolderRoleAssignmentArrayOutput struct{ *pulumi.OutputState } + +func (AuthorizationFolderRoleAssignmentArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*AuthorizationFolderRoleAssignment)(nil)).Elem() +} + +func (o AuthorizationFolderRoleAssignmentArrayOutput) ToAuthorizationFolderRoleAssignmentArrayOutput() AuthorizationFolderRoleAssignmentArrayOutput { + return o +} + +func (o AuthorizationFolderRoleAssignmentArrayOutput) ToAuthorizationFolderRoleAssignmentArrayOutputWithContext(ctx context.Context) AuthorizationFolderRoleAssignmentArrayOutput { + return o +} + +func (o AuthorizationFolderRoleAssignmentArrayOutput) Index(i pulumi.IntInput) AuthorizationFolderRoleAssignmentOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *AuthorizationFolderRoleAssignment { + return vs[0].([]*AuthorizationFolderRoleAssignment)[vs[1].(int)] + }).(AuthorizationFolderRoleAssignmentOutput) +} + +type AuthorizationFolderRoleAssignmentMapOutput struct{ *pulumi.OutputState } + +func (AuthorizationFolderRoleAssignmentMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*AuthorizationFolderRoleAssignment)(nil)).Elem() +} + +func (o AuthorizationFolderRoleAssignmentMapOutput) ToAuthorizationFolderRoleAssignmentMapOutput() AuthorizationFolderRoleAssignmentMapOutput { + return o +} + +func (o AuthorizationFolderRoleAssignmentMapOutput) ToAuthorizationFolderRoleAssignmentMapOutputWithContext(ctx context.Context) AuthorizationFolderRoleAssignmentMapOutput { + return o +} + +func (o AuthorizationFolderRoleAssignmentMapOutput) MapIndex(k pulumi.StringInput) AuthorizationFolderRoleAssignmentOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *AuthorizationFolderRoleAssignment { + return vs[0].(map[string]*AuthorizationFolderRoleAssignment)[vs[1].(string)] + }).(AuthorizationFolderRoleAssignmentOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*AuthorizationFolderRoleAssignmentInput)(nil)).Elem(), &AuthorizationFolderRoleAssignment{}) + pulumi.RegisterInputType(reflect.TypeOf((*AuthorizationFolderRoleAssignmentArrayInput)(nil)).Elem(), AuthorizationFolderRoleAssignmentArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*AuthorizationFolderRoleAssignmentMapInput)(nil)).Elem(), AuthorizationFolderRoleAssignmentMap{}) + pulumi.RegisterOutputType(AuthorizationFolderRoleAssignmentOutput{}) + pulumi.RegisterOutputType(AuthorizationFolderRoleAssignmentArrayOutput{}) + pulumi.RegisterOutputType(AuthorizationFolderRoleAssignmentMapOutput{}) +} diff --git a/sdk/go/stackit/authorizationOrganizationRoleAssignment.go b/sdk/go/stackit/authorizationOrganizationRoleAssignment.go index 50922f4..1694c02 100644 --- a/sdk/go/stackit/authorizationOrganizationRoleAssignment.go +++ b/sdk/go/stackit/authorizationOrganizationRoleAssignment.go @@ -12,7 +12,7 @@ import ( "github.com/stackitcloud/pulumi-stackit/sdk/go/stackit/internal" ) -// organization Role Assignment resource schema. +// Organization Role Assignment resource schema. // // > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. // @@ -22,7 +22,7 @@ type AuthorizationOrganizationRoleAssignment struct { // organization Resource to assign the role to. ResourceId pulumi.StringOutput `pulumi:"resourceId"` - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role pulumi.StringOutput `pulumi:"role"` // Identifier of user, service account or client. Usually email address or name in case of clients Subject pulumi.StringOutput `pulumi:"subject"` @@ -69,7 +69,7 @@ func GetAuthorizationOrganizationRoleAssignment(ctx *pulumi.Context, type authorizationOrganizationRoleAssignmentState struct { // organization Resource to assign the role to. ResourceId *string `pulumi:"resourceId"` - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role *string `pulumi:"role"` // Identifier of user, service account or client. Usually email address or name in case of clients Subject *string `pulumi:"subject"` @@ -78,7 +78,7 @@ type authorizationOrganizationRoleAssignmentState struct { type AuthorizationOrganizationRoleAssignmentState struct { // organization Resource to assign the role to. ResourceId pulumi.StringPtrInput - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role pulumi.StringPtrInput // Identifier of user, service account or client. Usually email address or name in case of clients Subject pulumi.StringPtrInput @@ -91,7 +91,7 @@ func (AuthorizationOrganizationRoleAssignmentState) ElementType() reflect.Type { type authorizationOrganizationRoleAssignmentArgs struct { // organization Resource to assign the role to. ResourceId string `pulumi:"resourceId"` - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role string `pulumi:"role"` // Identifier of user, service account or client. Usually email address or name in case of clients Subject string `pulumi:"subject"` @@ -101,7 +101,7 @@ type authorizationOrganizationRoleAssignmentArgs struct { type AuthorizationOrganizationRoleAssignmentArgs struct { // organization Resource to assign the role to. ResourceId pulumi.StringInput - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role pulumi.StringInput // Identifier of user, service account or client. Usually email address or name in case of clients Subject pulumi.StringInput @@ -199,7 +199,7 @@ func (o AuthorizationOrganizationRoleAssignmentOutput) ResourceId() pulumi.Strin return o.ApplyT(func(v *AuthorizationOrganizationRoleAssignment) pulumi.StringOutput { return v.ResourceId }).(pulumi.StringOutput) } -// Role to be assigned +// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` func (o AuthorizationOrganizationRoleAssignmentOutput) Role() pulumi.StringOutput { return o.ApplyT(func(v *AuthorizationOrganizationRoleAssignment) pulumi.StringOutput { return v.Role }).(pulumi.StringOutput) } diff --git a/sdk/go/stackit/authorizationProjectRoleAssignment.go b/sdk/go/stackit/authorizationProjectRoleAssignment.go index cf6ccee..d5537f9 100644 --- a/sdk/go/stackit/authorizationProjectRoleAssignment.go +++ b/sdk/go/stackit/authorizationProjectRoleAssignment.go @@ -12,7 +12,7 @@ import ( "github.com/stackitcloud/pulumi-stackit/sdk/go/stackit/internal" ) -// project Role Assignment resource schema. +// Project Role Assignment resource schema. // // > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. // @@ -22,7 +22,7 @@ type AuthorizationProjectRoleAssignment struct { // project Resource to assign the role to. ResourceId pulumi.StringOutput `pulumi:"resourceId"` - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role pulumi.StringOutput `pulumi:"role"` // Identifier of user, service account or client. Usually email address or name in case of clients Subject pulumi.StringOutput `pulumi:"subject"` @@ -69,7 +69,7 @@ func GetAuthorizationProjectRoleAssignment(ctx *pulumi.Context, type authorizationProjectRoleAssignmentState struct { // project Resource to assign the role to. ResourceId *string `pulumi:"resourceId"` - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role *string `pulumi:"role"` // Identifier of user, service account or client. Usually email address or name in case of clients Subject *string `pulumi:"subject"` @@ -78,7 +78,7 @@ type authorizationProjectRoleAssignmentState struct { type AuthorizationProjectRoleAssignmentState struct { // project Resource to assign the role to. ResourceId pulumi.StringPtrInput - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role pulumi.StringPtrInput // Identifier of user, service account or client. Usually email address or name in case of clients Subject pulumi.StringPtrInput @@ -91,7 +91,7 @@ func (AuthorizationProjectRoleAssignmentState) ElementType() reflect.Type { type authorizationProjectRoleAssignmentArgs struct { // project Resource to assign the role to. ResourceId string `pulumi:"resourceId"` - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role string `pulumi:"role"` // Identifier of user, service account or client. Usually email address or name in case of clients Subject string `pulumi:"subject"` @@ -101,7 +101,7 @@ type authorizationProjectRoleAssignmentArgs struct { type AuthorizationProjectRoleAssignmentArgs struct { // project Resource to assign the role to. ResourceId pulumi.StringInput - // Role to be assigned + // Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` Role pulumi.StringInput // Identifier of user, service account or client. Usually email address or name in case of clients Subject pulumi.StringInput @@ -199,7 +199,7 @@ func (o AuthorizationProjectRoleAssignmentOutput) ResourceId() pulumi.StringOutp return o.ApplyT(func(v *AuthorizationProjectRoleAssignment) pulumi.StringOutput { return v.ResourceId }).(pulumi.StringOutput) } -// Role to be assigned +// Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` func (o AuthorizationProjectRoleAssignmentOutput) Role() pulumi.StringOutput { return o.ApplyT(func(v *AuthorizationProjectRoleAssignment) pulumi.StringOutput { return v.Role }).(pulumi.StringOutput) } diff --git a/sdk/go/stackit/init.go b/sdk/go/stackit/init.go index 5c0a088..ca15b28 100644 --- a/sdk/go/stackit/init.go +++ b/sdk/go/stackit/init.go @@ -23,6 +23,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi switch typ { case "stackit:index/affinityGroup:AffinityGroup": r = &AffinityGroup{} + case "stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment": + r = &AuthorizationFolderRoleAssignment{} case "stackit:index/authorizationOrganizationRoleAssignment:AuthorizationOrganizationRoleAssignment": r = &AuthorizationOrganizationRoleAssignment{} case "stackit:index/authorizationProjectRoleAssignment:AuthorizationProjectRoleAssignment": @@ -211,6 +213,11 @@ func init() { "index/affinityGroup", &module{version}, ) + pulumi.RegisterResourceModule( + "stackit", + "index/authorizationFolderRoleAssignment", + &module{version}, + ) pulumi.RegisterResourceModule( "stackit", "index/authorizationOrganizationRoleAssignment", diff --git a/sdk/nodejs/authorizationFolderRoleAssignment.ts b/sdk/nodejs/authorizationFolderRoleAssignment.ts new file mode 100644 index 0000000..4071368 --- /dev/null +++ b/sdk/nodejs/authorizationFolderRoleAssignment.ts @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-language-nodejs. *** +// *** 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"; + +/** + * Folder Role Assignment resource schema. + * + * > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. + * + * ## Example Usage + */ +export class AuthorizationFolderRoleAssignment extends pulumi.CustomResource { + /** + * Get an existing AuthorizationFolderRoleAssignment 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?: AuthorizationFolderRoleAssignmentState, opts?: pulumi.CustomResourceOptions): AuthorizationFolderRoleAssignment { + return new AuthorizationFolderRoleAssignment(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment'; + + /** + * Returns true if the given object is an instance of AuthorizationFolderRoleAssignment. 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 AuthorizationFolderRoleAssignment { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === AuthorizationFolderRoleAssignment.__pulumiType; + } + + /** + * folder Resource to assign the role to. + */ + declare public readonly resourceId: pulumi.Output; + /** + * Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + */ + declare public readonly role: pulumi.Output; + /** + * Identifier of user, service account or client. Usually email address or name in case of clients + */ + declare public readonly subject: pulumi.Output; + + /** + * Create a AuthorizationFolderRoleAssignment 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: AuthorizationFolderRoleAssignmentArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: AuthorizationFolderRoleAssignmentArgs | AuthorizationFolderRoleAssignmentState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as AuthorizationFolderRoleAssignmentState | undefined; + resourceInputs["resourceId"] = state?.resourceId; + resourceInputs["role"] = state?.role; + resourceInputs["subject"] = state?.subject; + } else { + const args = argsOrState as AuthorizationFolderRoleAssignmentArgs | undefined; + if (args?.resourceId === undefined && !opts.urn) { + throw new Error("Missing required property 'resourceId'"); + } + if (args?.role === undefined && !opts.urn) { + throw new Error("Missing required property 'role'"); + } + if (args?.subject === undefined && !opts.urn) { + throw new Error("Missing required property 'subject'"); + } + resourceInputs["resourceId"] = args?.resourceId; + resourceInputs["role"] = args?.role; + resourceInputs["subject"] = args?.subject; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(AuthorizationFolderRoleAssignment.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering AuthorizationFolderRoleAssignment resources. + */ +export interface AuthorizationFolderRoleAssignmentState { + /** + * folder Resource to assign the role to. + */ + resourceId?: pulumi.Input; + /** + * Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + */ + role?: pulumi.Input; + /** + * Identifier of user, service account or client. Usually email address or name in case of clients + */ + subject?: pulumi.Input; +} + +/** + * The set of arguments for constructing a AuthorizationFolderRoleAssignment resource. + */ +export interface AuthorizationFolderRoleAssignmentArgs { + /** + * folder Resource to assign the role to. + */ + resourceId: pulumi.Input; + /** + * Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + */ + role: pulumi.Input; + /** + * Identifier of user, service account or client. Usually email address or name in case of clients + */ + subject: pulumi.Input; +} diff --git a/sdk/nodejs/authorizationOrganizationRoleAssignment.ts b/sdk/nodejs/authorizationOrganizationRoleAssignment.ts index e6e3bd6..b590719 100644 --- a/sdk/nodejs/authorizationOrganizationRoleAssignment.ts +++ b/sdk/nodejs/authorizationOrganizationRoleAssignment.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "./utilities"; /** - * organization Role Assignment resource schema. + * Organization Role Assignment resource schema. * * > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. * @@ -44,7 +44,7 @@ export class AuthorizationOrganizationRoleAssignment extends pulumi.CustomResour */ declare public readonly resourceId: pulumi.Output; /** - * Role to be assigned + * Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` */ declare public readonly role: pulumi.Output; /** @@ -97,7 +97,7 @@ export interface AuthorizationOrganizationRoleAssignmentState { */ resourceId?: pulumi.Input; /** - * Role to be assigned + * Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` */ role?: pulumi.Input; /** @@ -115,7 +115,7 @@ export interface AuthorizationOrganizationRoleAssignmentArgs { */ resourceId: pulumi.Input; /** - * Role to be assigned + * Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` */ role: pulumi.Input; /** diff --git a/sdk/nodejs/authorizationProjectRoleAssignment.ts b/sdk/nodejs/authorizationProjectRoleAssignment.ts index 531a57a..64e55db 100644 --- a/sdk/nodejs/authorizationProjectRoleAssignment.ts +++ b/sdk/nodejs/authorizationProjectRoleAssignment.ts @@ -5,7 +5,7 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "./utilities"; /** - * project Role Assignment resource schema. + * Project Role Assignment resource schema. * * > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. * @@ -44,7 +44,7 @@ export class AuthorizationProjectRoleAssignment extends pulumi.CustomResource { */ declare public readonly resourceId: pulumi.Output; /** - * Role to be assigned + * Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` */ declare public readonly role: pulumi.Output; /** @@ -97,7 +97,7 @@ export interface AuthorizationProjectRoleAssignmentState { */ resourceId?: pulumi.Input; /** - * Role to be assigned + * Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` */ role?: pulumi.Input; /** @@ -115,7 +115,7 @@ export interface AuthorizationProjectRoleAssignmentArgs { */ resourceId: pulumi.Input; /** - * Role to be assigned + * Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` */ role: pulumi.Input; /** diff --git a/sdk/nodejs/index.ts b/sdk/nodejs/index.ts index 505b477..01249f2 100644 --- a/sdk/nodejs/index.ts +++ b/sdk/nodejs/index.ts @@ -10,6 +10,11 @@ export type AffinityGroup = import("./affinityGroup").AffinityGroup; export const AffinityGroup: typeof import("./affinityGroup").AffinityGroup = null as any; utilities.lazyLoad(exports, ["AffinityGroup"], () => require("./affinityGroup")); +export { AuthorizationFolderRoleAssignmentArgs, AuthorizationFolderRoleAssignmentState } from "./authorizationFolderRoleAssignment"; +export type AuthorizationFolderRoleAssignment = import("./authorizationFolderRoleAssignment").AuthorizationFolderRoleAssignment; +export const AuthorizationFolderRoleAssignment: typeof import("./authorizationFolderRoleAssignment").AuthorizationFolderRoleAssignment = null as any; +utilities.lazyLoad(exports, ["AuthorizationFolderRoleAssignment"], () => require("./authorizationFolderRoleAssignment")); + export { AuthorizationOrganizationRoleAssignmentArgs, AuthorizationOrganizationRoleAssignmentState } from "./authorizationOrganizationRoleAssignment"; export type AuthorizationOrganizationRoleAssignment = import("./authorizationOrganizationRoleAssignment").AuthorizationOrganizationRoleAssignment; export const AuthorizationOrganizationRoleAssignment: typeof import("./authorizationOrganizationRoleAssignment").AuthorizationOrganizationRoleAssignment = null as any; @@ -779,6 +784,8 @@ const _module = { switch (type) { case "stackit:index/affinityGroup:AffinityGroup": return new AffinityGroup(name, undefined, { urn }) + case "stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment": + return new AuthorizationFolderRoleAssignment(name, undefined, { urn }) case "stackit:index/authorizationOrganizationRoleAssignment:AuthorizationOrganizationRoleAssignment": return new AuthorizationOrganizationRoleAssignment(name, undefined, { urn }) case "stackit:index/authorizationProjectRoleAssignment:AuthorizationProjectRoleAssignment": @@ -937,6 +944,7 @@ const _module = { }, }; pulumi.runtime.registerResourceModule("stackit", "index/affinityGroup", _module) +pulumi.runtime.registerResourceModule("stackit", "index/authorizationFolderRoleAssignment", _module) pulumi.runtime.registerResourceModule("stackit", "index/authorizationOrganizationRoleAssignment", _module) pulumi.runtime.registerResourceModule("stackit", "index/authorizationProjectRoleAssignment", _module) pulumi.runtime.registerResourceModule("stackit", "index/cdnCustomDomain", _module) diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 6538e2a..0556fc0 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -14,6 +14,7 @@ }, "files": [ "affinityGroup.ts", + "authorizationFolderRoleAssignment.ts", "authorizationOrganizationRoleAssignment.ts", "authorizationProjectRoleAssignment.ts", "cdnCustomDomain.ts", diff --git a/sdk/python/pulumi_stackit/__init__.py b/sdk/python/pulumi_stackit/__init__.py index 4f9affb..ab79401 100644 --- a/sdk/python/pulumi_stackit/__init__.py +++ b/sdk/python/pulumi_stackit/__init__.py @@ -7,6 +7,7 @@ import typing # Export this package's modules as members: from .affinity_group import * +from .authorization_folder_role_assignment import * from .authorization_organization_role_assignment import * from .authorization_project_role_assignment import * from .cdn_custom_domain import * @@ -179,6 +180,14 @@ "stackit:index/affinityGroup:AffinityGroup": "AffinityGroup" } }, + { + "pkg": "stackit", + "mod": "index/authorizationFolderRoleAssignment", + "fqn": "pulumi_stackit", + "classes": { + "stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment": "AuthorizationFolderRoleAssignment" + } + }, { "pkg": "stackit", "mod": "index/authorizationOrganizationRoleAssignment", diff --git a/sdk/python/pulumi_stackit/authorization_folder_role_assignment.py b/sdk/python/pulumi_stackit/authorization_folder_role_assignment.py new file mode 100644 index 0000000..e3cfdbd --- /dev/null +++ b/sdk/python/pulumi_stackit/authorization_folder_role_assignment.py @@ -0,0 +1,256 @@ +# coding=utf-8 +# *** WARNING: this file was generated by pulumi-language-python. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import builtins as _builtins +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from . import _utilities + +__all__ = ['AuthorizationFolderRoleAssignmentArgs', 'AuthorizationFolderRoleAssignment'] + +@pulumi.input_type +class AuthorizationFolderRoleAssignmentArgs: + def __init__(__self__, *, + resource_id: pulumi.Input[_builtins.str], + role: pulumi.Input[_builtins.str], + subject: pulumi.Input[_builtins.str]): + """ + The set of arguments for constructing a AuthorizationFolderRoleAssignment resource. + :param pulumi.Input[_builtins.str] resource_id: folder Resource to assign the role to. + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients + """ + pulumi.set(__self__, "resource_id", resource_id) + pulumi.set(__self__, "role", role) + pulumi.set(__self__, "subject", subject) + + @_builtins.property + @pulumi.getter(name="resourceId") + def resource_id(self) -> pulumi.Input[_builtins.str]: + """ + folder Resource to assign the role to. + """ + return pulumi.get(self, "resource_id") + + @resource_id.setter + def resource_id(self, value: pulumi.Input[_builtins.str]): + pulumi.set(self, "resource_id", value) + + @_builtins.property + @pulumi.getter + def role(self) -> pulumi.Input[_builtins.str]: + """ + Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + """ + return pulumi.get(self, "role") + + @role.setter + def role(self, value: pulumi.Input[_builtins.str]): + pulumi.set(self, "role", value) + + @_builtins.property + @pulumi.getter + def subject(self) -> pulumi.Input[_builtins.str]: + """ + Identifier of user, service account or client. Usually email address or name in case of clients + """ + return pulumi.get(self, "subject") + + @subject.setter + def subject(self, value: pulumi.Input[_builtins.str]): + pulumi.set(self, "subject", value) + + +@pulumi.input_type +class _AuthorizationFolderRoleAssignmentState: + def __init__(__self__, *, + resource_id: Optional[pulumi.Input[_builtins.str]] = None, + role: Optional[pulumi.Input[_builtins.str]] = None, + subject: Optional[pulumi.Input[_builtins.str]] = None): + """ + Input properties used for looking up and filtering AuthorizationFolderRoleAssignment resources. + :param pulumi.Input[_builtins.str] resource_id: folder Resource to assign the role to. + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients + """ + if resource_id is not None: + pulumi.set(__self__, "resource_id", resource_id) + if role is not None: + pulumi.set(__self__, "role", role) + if subject is not None: + pulumi.set(__self__, "subject", subject) + + @_builtins.property + @pulumi.getter(name="resourceId") + def resource_id(self) -> Optional[pulumi.Input[_builtins.str]]: + """ + folder Resource to assign the role to. + """ + return pulumi.get(self, "resource_id") + + @resource_id.setter + def resource_id(self, value: Optional[pulumi.Input[_builtins.str]]): + pulumi.set(self, "resource_id", value) + + @_builtins.property + @pulumi.getter + def role(self) -> Optional[pulumi.Input[_builtins.str]]: + """ + Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + """ + return pulumi.get(self, "role") + + @role.setter + def role(self, value: Optional[pulumi.Input[_builtins.str]]): + pulumi.set(self, "role", value) + + @_builtins.property + @pulumi.getter + def subject(self) -> Optional[pulumi.Input[_builtins.str]]: + """ + Identifier of user, service account or client. Usually email address or name in case of clients + """ + return pulumi.get(self, "subject") + + @subject.setter + def subject(self, value: Optional[pulumi.Input[_builtins.str]]): + pulumi.set(self, "subject", value) + + +@pulumi.type_token("stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment") +class AuthorizationFolderRoleAssignment(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + resource_id: Optional[pulumi.Input[_builtins.str]] = None, + role: Optional[pulumi.Input[_builtins.str]] = None, + subject: Optional[pulumi.Input[_builtins.str]] = None, + __props__=None): + """ + Folder Role Assignment resource schema. + + > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. + + ## Example Usage + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[_builtins.str] resource_id: folder Resource to assign the role to. + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: AuthorizationFolderRoleAssignmentArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Folder Role Assignment resource schema. + + > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. + + ## Example Usage + + :param str resource_name: The name of the resource. + :param AuthorizationFolderRoleAssignmentArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(AuthorizationFolderRoleAssignmentArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + resource_id: Optional[pulumi.Input[_builtins.str]] = None, + role: Optional[pulumi.Input[_builtins.str]] = None, + subject: Optional[pulumi.Input[_builtins.str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = AuthorizationFolderRoleAssignmentArgs.__new__(AuthorizationFolderRoleAssignmentArgs) + + if resource_id is None and not opts.urn: + raise TypeError("Missing required property 'resource_id'") + __props__.__dict__["resource_id"] = resource_id + if role is None and not opts.urn: + raise TypeError("Missing required property 'role'") + __props__.__dict__["role"] = role + if subject is None and not opts.urn: + raise TypeError("Missing required property 'subject'") + __props__.__dict__["subject"] = subject + super(AuthorizationFolderRoleAssignment, __self__).__init__( + 'stackit:index/authorizationFolderRoleAssignment:AuthorizationFolderRoleAssignment', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + resource_id: Optional[pulumi.Input[_builtins.str]] = None, + role: Optional[pulumi.Input[_builtins.str]] = None, + subject: Optional[pulumi.Input[_builtins.str]] = None) -> 'AuthorizationFolderRoleAssignment': + """ + Get an existing AuthorizationFolderRoleAssignment resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[_builtins.str] resource_id: folder Resource to assign the role to. + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _AuthorizationFolderRoleAssignmentState.__new__(_AuthorizationFolderRoleAssignmentState) + + __props__.__dict__["resource_id"] = resource_id + __props__.__dict__["role"] = role + __props__.__dict__["subject"] = subject + return AuthorizationFolderRoleAssignment(resource_name, opts=opts, __props__=__props__) + + @_builtins.property + @pulumi.getter(name="resourceId") + def resource_id(self) -> pulumi.Output[_builtins.str]: + """ + folder Resource to assign the role to. + """ + return pulumi.get(self, "resource_id") + + @_builtins.property + @pulumi.getter + def role(self) -> pulumi.Output[_builtins.str]: + """ + Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` + """ + return pulumi.get(self, "role") + + @_builtins.property + @pulumi.getter + def subject(self) -> pulumi.Output[_builtins.str]: + """ + Identifier of user, service account or client. Usually email address or name in case of clients + """ + return pulumi.get(self, "subject") + diff --git a/sdk/python/pulumi_stackit/authorization_organization_role_assignment.py b/sdk/python/pulumi_stackit/authorization_organization_role_assignment.py index a055774..779dac7 100644 --- a/sdk/python/pulumi_stackit/authorization_organization_role_assignment.py +++ b/sdk/python/pulumi_stackit/authorization_organization_role_assignment.py @@ -25,7 +25,7 @@ def __init__(__self__, *, """ The set of arguments for constructing a AuthorizationOrganizationRoleAssignment resource. :param pulumi.Input[_builtins.str] resource_id: organization Resource to assign the role to. - :param pulumi.Input[_builtins.str] role: Role to be assigned + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients """ pulumi.set(__self__, "resource_id", resource_id) @@ -48,7 +48,7 @@ def resource_id(self, value: pulumi.Input[_builtins.str]): @pulumi.getter def role(self) -> pulumi.Input[_builtins.str]: """ - Role to be assigned + Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` """ return pulumi.get(self, "role") @@ -78,7 +78,7 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering AuthorizationOrganizationRoleAssignment resources. :param pulumi.Input[_builtins.str] resource_id: organization Resource to assign the role to. - :param pulumi.Input[_builtins.str] role: Role to be assigned + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients """ if resource_id is not None: @@ -104,7 +104,7 @@ def resource_id(self, value: Optional[pulumi.Input[_builtins.str]]): @pulumi.getter def role(self) -> Optional[pulumi.Input[_builtins.str]]: """ - Role to be assigned + Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` """ return pulumi.get(self, "role") @@ -136,7 +136,7 @@ def __init__(__self__, subject: Optional[pulumi.Input[_builtins.str]] = None, __props__=None): """ - organization Role Assignment resource schema. + Organization Role Assignment resource schema. > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. @@ -145,7 +145,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[_builtins.str] resource_id: organization Resource to assign the role to. - :param pulumi.Input[_builtins.str] role: Role to be assigned + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients """ ... @@ -155,7 +155,7 @@ def __init__(__self__, args: AuthorizationOrganizationRoleAssignmentArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - organization Role Assignment resource schema. + Organization Role Assignment resource schema. > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. @@ -218,7 +218,7 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[_builtins.str] resource_id: organization Resource to assign the role to. - :param pulumi.Input[_builtins.str] role: Role to be assigned + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -242,7 +242,7 @@ def resource_id(self) -> pulumi.Output[_builtins.str]: @pulumi.getter def role(self) -> pulumi.Output[_builtins.str]: """ - Role to be assigned + Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` """ return pulumi.get(self, "role") diff --git a/sdk/python/pulumi_stackit/authorization_project_role_assignment.py b/sdk/python/pulumi_stackit/authorization_project_role_assignment.py index bd7046f..14b8887 100644 --- a/sdk/python/pulumi_stackit/authorization_project_role_assignment.py +++ b/sdk/python/pulumi_stackit/authorization_project_role_assignment.py @@ -25,7 +25,7 @@ def __init__(__self__, *, """ The set of arguments for constructing a AuthorizationProjectRoleAssignment resource. :param pulumi.Input[_builtins.str] resource_id: project Resource to assign the role to. - :param pulumi.Input[_builtins.str] role: Role to be assigned + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients """ pulumi.set(__self__, "resource_id", resource_id) @@ -48,7 +48,7 @@ def resource_id(self, value: pulumi.Input[_builtins.str]): @pulumi.getter def role(self) -> pulumi.Input[_builtins.str]: """ - Role to be assigned + Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` """ return pulumi.get(self, "role") @@ -78,7 +78,7 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering AuthorizationProjectRoleAssignment resources. :param pulumi.Input[_builtins.str] resource_id: project Resource to assign the role to. - :param pulumi.Input[_builtins.str] role: Role to be assigned + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients """ if resource_id is not None: @@ -104,7 +104,7 @@ def resource_id(self, value: Optional[pulumi.Input[_builtins.str]]): @pulumi.getter def role(self) -> Optional[pulumi.Input[_builtins.str]]: """ - Role to be assigned + Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` """ return pulumi.get(self, "role") @@ -136,7 +136,7 @@ def __init__(__self__, subject: Optional[pulumi.Input[_builtins.str]] = None, __props__=None): """ - project Role Assignment resource schema. + Project Role Assignment resource schema. > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. @@ -145,7 +145,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[_builtins.str] resource_id: project Resource to assign the role to. - :param pulumi.Input[_builtins.str] role: Role to be assigned + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients """ ... @@ -155,7 +155,7 @@ def __init__(__self__, args: AuthorizationProjectRoleAssignmentArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - project Role Assignment resource schema. + Project Role Assignment resource schema. > This resource is part of the iam experiment and is likely going to undergo significant changes or be removed in the future. Use it at your own discretion. @@ -218,7 +218,7 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[_builtins.str] resource_id: project Resource to assign the role to. - :param pulumi.Input[_builtins.str] role: Role to be assigned + :param pulumi.Input[_builtins.str] role: Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` :param pulumi.Input[_builtins.str] subject: Identifier of user, service account or client. Usually email address or name in case of clients """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -242,7 +242,7 @@ def resource_id(self) -> pulumi.Output[_builtins.str]: @pulumi.getter def role(self) -> pulumi.Output[_builtins.str]: """ - Role to be assigned + Role to be assigned. Available roles can be queried using stackit-cli: `stackit curl https://authorization.api.stackit.cloud/v2/permissions` """ return pulumi.get(self, "role")