pulumi-gcp 8.23.0a1742538920__py3-none-any.whl → 8.24.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. pulumi_gcp/__init__.py +59 -0
  2. pulumi_gcp/alloydb/_inputs.py +27 -1
  3. pulumi_gcp/alloydb/outputs.py +33 -2
  4. pulumi_gcp/applicationintegration/client.py +18 -24
  5. pulumi_gcp/bigquery/_inputs.py +178 -0
  6. pulumi_gcp/bigquery/outputs.py +127 -0
  7. pulumi_gcp/bigquery/reservation.py +189 -1
  8. pulumi_gcp/bigquery/table.py +61 -0
  9. pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +11 -7
  10. pulumi_gcp/bigtable/table.py +7 -7
  11. pulumi_gcp/chronicle/data_access_label.py +16 -0
  12. pulumi_gcp/clouddeploy/_inputs.py +20 -0
  13. pulumi_gcp/clouddeploy/outputs.py +15 -1
  14. pulumi_gcp/cloudfunctions/function.py +11 -11
  15. pulumi_gcp/cloudfunctionsv2/function.py +24 -24
  16. pulumi_gcp/cloudidentity/get_group_transitive_memberships.py +41 -2
  17. pulumi_gcp/cloudidentity/outputs.py +18 -38
  18. pulumi_gcp/cloudrunv2/service.py +14 -14
  19. pulumi_gcp/compute/__init__.py +1 -0
  20. pulumi_gcp/compute/_inputs.py +616 -18
  21. pulumi_gcp/compute/firewall_policy.py +20 -0
  22. pulumi_gcp/compute/get_images.py +172 -0
  23. pulumi_gcp/compute/get_resource_policy.py +15 -4
  24. pulumi_gcp/compute/image.py +54 -0
  25. pulumi_gcp/compute/interconnect.py +14 -7
  26. pulumi_gcp/compute/outputs.py +710 -18
  27. pulumi_gcp/compute/region_network_endpoint_group.py +2 -2
  28. pulumi_gcp/compute/resource_policy.py +169 -3
  29. pulumi_gcp/compute/router_route_policy.py +16 -0
  30. pulumi_gcp/compute/subnetwork.py +109 -1
  31. pulumi_gcp/compute/target_https_proxy.py +7 -7
  32. pulumi_gcp/config/__init__.pyi +8 -0
  33. pulumi_gcp/config/vars.py +16 -0
  34. pulumi_gcp/container/_inputs.py +265 -4
  35. pulumi_gcp/container/cluster.py +54 -0
  36. pulumi_gcp/container/get_attached_versions.py +2 -2
  37. pulumi_gcp/container/get_cluster.py +12 -1
  38. pulumi_gcp/container/outputs.py +301 -6
  39. pulumi_gcp/dataform/repository.py +49 -0
  40. pulumi_gcp/dataproc/_inputs.py +23 -0
  41. pulumi_gcp/dataproc/get_metastore_service.py +26 -4
  42. pulumi_gcp/dataproc/metastore_federation.py +56 -0
  43. pulumi_gcp/dataproc/metastore_service.py +58 -2
  44. pulumi_gcp/dataproc/outputs.py +27 -0
  45. pulumi_gcp/eventarc/__init__.py +1 -0
  46. pulumi_gcp/eventarc/_inputs.py +1758 -0
  47. pulumi_gcp/eventarc/outputs.py +1337 -0
  48. pulumi_gcp/eventarc/pipeline.py +1596 -0
  49. pulumi_gcp/firebase/__init__.py +1 -0
  50. pulumi_gcp/firebase/_inputs.py +154 -0
  51. pulumi_gcp/firebase/app_hosting_backend.py +1303 -0
  52. pulumi_gcp/firebase/hosting_version.py +2 -2
  53. pulumi_gcp/firebase/outputs.py +127 -0
  54. pulumi_gcp/kms/get_key_rings.py +39 -2
  55. pulumi_gcp/lustre/__init__.py +8 -0
  56. pulumi_gcp/lustre/instance.py +983 -0
  57. pulumi_gcp/managedkafka/__init__.py +2 -0
  58. pulumi_gcp/managedkafka/_inputs.py +263 -0
  59. pulumi_gcp/managedkafka/connect_cluster.py +795 -0
  60. pulumi_gcp/managedkafka/connector.py +695 -0
  61. pulumi_gcp/managedkafka/outputs.py +248 -0
  62. pulumi_gcp/memorystore/_inputs.py +419 -0
  63. pulumi_gcp/memorystore/get_instance.py +23 -1
  64. pulumi_gcp/memorystore/instance.py +144 -14
  65. pulumi_gcp/memorystore/outputs.py +544 -0
  66. pulumi_gcp/monitoring/uptime_check_config.py +2 -2
  67. pulumi_gcp/networkmanagement/_inputs.py +422 -91
  68. pulumi_gcp/networkmanagement/connectivity_test.py +233 -211
  69. pulumi_gcp/networkmanagement/outputs.py +280 -61
  70. pulumi_gcp/networksecurity/_inputs.py +1277 -242
  71. pulumi_gcp/networksecurity/gateway_security_policy.py +0 -7
  72. pulumi_gcp/networksecurity/intercept_deployment_group.py +44 -16
  73. pulumi_gcp/networksecurity/intercept_endpoint_group.py +90 -36
  74. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +53 -8
  75. pulumi_gcp/networksecurity/mirroring_deployment.py +22 -0
  76. pulumi_gcp/networksecurity/mirroring_deployment_group.py +20 -0
  77. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +24 -0
  78. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +28 -0
  79. pulumi_gcp/networksecurity/outputs.py +723 -8
  80. pulumi_gcp/networksecurity/tls_inspection_policy.py +14 -0
  81. pulumi_gcp/networkservices/gateway.py +242 -120
  82. pulumi_gcp/organizations/__init__.py +1 -0
  83. pulumi_gcp/organizations/get_iam_custom_role.py +198 -0
  84. pulumi_gcp/osconfig/__init__.py +1 -0
  85. pulumi_gcp/osconfig/_inputs.py +5413 -0
  86. pulumi_gcp/osconfig/outputs.py +3962 -0
  87. pulumi_gcp/osconfig/v2_policy_orchestrator.py +971 -0
  88. pulumi_gcp/projects/__init__.py +2 -0
  89. pulumi_gcp/projects/get_iam_custom_role.py +198 -0
  90. pulumi_gcp/projects/get_iam_custom_roles.py +164 -0
  91. pulumi_gcp/projects/outputs.py +96 -0
  92. pulumi_gcp/provider.py +80 -0
  93. pulumi_gcp/pulumi-plugin.json +1 -1
  94. pulumi_gcp/servicenetworking/peered_dns_domain.py +4 -0
  95. pulumi_gcp/sql/outputs.py +8 -8
  96. pulumi_gcp/storage/__init__.py +2 -0
  97. pulumi_gcp/storage/_inputs.py +740 -6
  98. pulumi_gcp/storage/control_project_intelligence_config.py +366 -0
  99. pulumi_gcp/storage/get_control_project_intelligence_config.py +130 -0
  100. pulumi_gcp/storage/insights_report_config.py +121 -20
  101. pulumi_gcp/storage/outputs.py +723 -4
  102. pulumi_gcp/workflows/workflow.py +75 -7
  103. {pulumi_gcp-8.23.0a1742538920.dist-info → pulumi_gcp-8.24.0.dist-info}/METADATA +1 -1
  104. {pulumi_gcp-8.23.0a1742538920.dist-info → pulumi_gcp-8.24.0.dist-info}/RECORD +106 -93
  105. {pulumi_gcp-8.23.0a1742538920.dist-info → pulumi_gcp-8.24.0.dist-info}/WHEEL +1 -1
  106. {pulumi_gcp-8.23.0a1742538920.dist-info → pulumi_gcp-8.24.0.dist-info}/top_level.txt +0 -0
@@ -9,6 +9,8 @@ from .access_approval_settings import *
9
9
  from .api_key import *
10
10
  from .default_service_accounts import *
11
11
  from .get_ancestry import *
12
+ from .get_iam_custom_role import *
13
+ from .get_iam_custom_roles import *
12
14
  from .get_iam_policy import *
13
15
  from .get_organization_policy import *
14
16
  from .get_project import *
@@ -0,0 +1,198 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = [
18
+ 'GetIamCustomRoleResult',
19
+ 'AwaitableGetIamCustomRoleResult',
20
+ 'get_iam_custom_role',
21
+ 'get_iam_custom_role_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetIamCustomRoleResult:
26
+ """
27
+ A collection of values returned by getIamCustomRole.
28
+ """
29
+ def __init__(__self__, deleted=None, description=None, id=None, name=None, permissions=None, project=None, role_id=None, stage=None, title=None):
30
+ if deleted and not isinstance(deleted, bool):
31
+ raise TypeError("Expected argument 'deleted' to be a bool")
32
+ pulumi.set(__self__, "deleted", deleted)
33
+ if description and not isinstance(description, str):
34
+ raise TypeError("Expected argument 'description' to be a str")
35
+ pulumi.set(__self__, "description", description)
36
+ if id and not isinstance(id, str):
37
+ raise TypeError("Expected argument 'id' to be a str")
38
+ pulumi.set(__self__, "id", id)
39
+ if name and not isinstance(name, str):
40
+ raise TypeError("Expected argument 'name' to be a str")
41
+ pulumi.set(__self__, "name", name)
42
+ if permissions and not isinstance(permissions, list):
43
+ raise TypeError("Expected argument 'permissions' to be a list")
44
+ pulumi.set(__self__, "permissions", permissions)
45
+ if project and not isinstance(project, str):
46
+ raise TypeError("Expected argument 'project' to be a str")
47
+ pulumi.set(__self__, "project", project)
48
+ if role_id and not isinstance(role_id, str):
49
+ raise TypeError("Expected argument 'role_id' to be a str")
50
+ pulumi.set(__self__, "role_id", role_id)
51
+ if stage and not isinstance(stage, str):
52
+ raise TypeError("Expected argument 'stage' to be a str")
53
+ pulumi.set(__self__, "stage", stage)
54
+ if title and not isinstance(title, str):
55
+ raise TypeError("Expected argument 'title' to be a str")
56
+ pulumi.set(__self__, "title", title)
57
+
58
+ @property
59
+ @pulumi.getter
60
+ def deleted(self) -> bool:
61
+ return pulumi.get(self, "deleted")
62
+
63
+ @property
64
+ @pulumi.getter
65
+ def description(self) -> str:
66
+ return pulumi.get(self, "description")
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def id(self) -> str:
71
+ """
72
+ The provider-assigned unique ID for this managed resource.
73
+ """
74
+ return pulumi.get(self, "id")
75
+
76
+ @property
77
+ @pulumi.getter
78
+ def name(self) -> str:
79
+ return pulumi.get(self, "name")
80
+
81
+ @property
82
+ @pulumi.getter
83
+ def permissions(self) -> Sequence[str]:
84
+ return pulumi.get(self, "permissions")
85
+
86
+ @property
87
+ @pulumi.getter
88
+ def project(self) -> Optional[str]:
89
+ return pulumi.get(self, "project")
90
+
91
+ @property
92
+ @pulumi.getter(name="roleId")
93
+ def role_id(self) -> str:
94
+ return pulumi.get(self, "role_id")
95
+
96
+ @property
97
+ @pulumi.getter
98
+ def stage(self) -> str:
99
+ return pulumi.get(self, "stage")
100
+
101
+ @property
102
+ @pulumi.getter
103
+ def title(self) -> str:
104
+ return pulumi.get(self, "title")
105
+
106
+
107
+ class AwaitableGetIamCustomRoleResult(GetIamCustomRoleResult):
108
+ # pylint: disable=using-constant-test
109
+ def __await__(self):
110
+ if False:
111
+ yield self
112
+ return GetIamCustomRoleResult(
113
+ deleted=self.deleted,
114
+ description=self.description,
115
+ id=self.id,
116
+ name=self.name,
117
+ permissions=self.permissions,
118
+ project=self.project,
119
+ role_id=self.role_id,
120
+ stage=self.stage,
121
+ title=self.title)
122
+
123
+
124
+ def get_iam_custom_role(project: Optional[str] = None,
125
+ role_id: Optional[str] = None,
126
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIamCustomRoleResult:
127
+ """
128
+ Get information about a Google Cloud Project IAM Custom Role. Note that you must have the `roles/iam.roleViewer` role (or equivalent permissions) at the project level to use this datasource.
129
+
130
+ ```python
131
+ import pulumi
132
+ import pulumi_gcp as gcp
133
+
134
+ example = gcp.projects.get_iam_custom_role(project="your-project-id",
135
+ role_id="your-role-id")
136
+ project = gcp.projects.IAMMember("project",
137
+ project="your-project-id",
138
+ role=example.name,
139
+ member="user:jane@example.com")
140
+ ```
141
+
142
+
143
+ :param str project: The project were the custom role has been created in. Defaults to the provider project configuration.
144
+ :param str role_id: The role id that has been used for this role.
145
+ """
146
+ __args__ = dict()
147
+ __args__['project'] = project
148
+ __args__['roleId'] = role_id
149
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
150
+ __ret__ = pulumi.runtime.invoke('gcp:projects/getIamCustomRole:getIamCustomRole', __args__, opts=opts, typ=GetIamCustomRoleResult).value
151
+
152
+ return AwaitableGetIamCustomRoleResult(
153
+ deleted=pulumi.get(__ret__, 'deleted'),
154
+ description=pulumi.get(__ret__, 'description'),
155
+ id=pulumi.get(__ret__, 'id'),
156
+ name=pulumi.get(__ret__, 'name'),
157
+ permissions=pulumi.get(__ret__, 'permissions'),
158
+ project=pulumi.get(__ret__, 'project'),
159
+ role_id=pulumi.get(__ret__, 'role_id'),
160
+ stage=pulumi.get(__ret__, 'stage'),
161
+ title=pulumi.get(__ret__, 'title'))
162
+ def get_iam_custom_role_output(project: Optional[pulumi.Input[Optional[str]]] = None,
163
+ role_id: Optional[pulumi.Input[str]] = None,
164
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetIamCustomRoleResult]:
165
+ """
166
+ Get information about a Google Cloud Project IAM Custom Role. Note that you must have the `roles/iam.roleViewer` role (or equivalent permissions) at the project level to use this datasource.
167
+
168
+ ```python
169
+ import pulumi
170
+ import pulumi_gcp as gcp
171
+
172
+ example = gcp.projects.get_iam_custom_role(project="your-project-id",
173
+ role_id="your-role-id")
174
+ project = gcp.projects.IAMMember("project",
175
+ project="your-project-id",
176
+ role=example.name,
177
+ member="user:jane@example.com")
178
+ ```
179
+
180
+
181
+ :param str project: The project were the custom role has been created in. Defaults to the provider project configuration.
182
+ :param str role_id: The role id that has been used for this role.
183
+ """
184
+ __args__ = dict()
185
+ __args__['project'] = project
186
+ __args__['roleId'] = role_id
187
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
188
+ __ret__ = pulumi.runtime.invoke_output('gcp:projects/getIamCustomRole:getIamCustomRole', __args__, opts=opts, typ=GetIamCustomRoleResult)
189
+ return __ret__.apply(lambda __response__: GetIamCustomRoleResult(
190
+ deleted=pulumi.get(__response__, 'deleted'),
191
+ description=pulumi.get(__response__, 'description'),
192
+ id=pulumi.get(__response__, 'id'),
193
+ name=pulumi.get(__response__, 'name'),
194
+ permissions=pulumi.get(__response__, 'permissions'),
195
+ project=pulumi.get(__response__, 'project'),
196
+ role_id=pulumi.get(__response__, 'role_id'),
197
+ stage=pulumi.get(__response__, 'stage'),
198
+ title=pulumi.get(__response__, 'title')))
@@ -0,0 +1,164 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetIamCustomRolesResult',
20
+ 'AwaitableGetIamCustomRolesResult',
21
+ 'get_iam_custom_roles',
22
+ 'get_iam_custom_roles_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetIamCustomRolesResult:
27
+ """
28
+ A collection of values returned by getIamCustomRoles.
29
+ """
30
+ def __init__(__self__, id=None, project=None, roles=None, show_deleted=None, view=None):
31
+ if id and not isinstance(id, str):
32
+ raise TypeError("Expected argument 'id' to be a str")
33
+ pulumi.set(__self__, "id", id)
34
+ if project and not isinstance(project, str):
35
+ raise TypeError("Expected argument 'project' to be a str")
36
+ pulumi.set(__self__, "project", project)
37
+ if roles and not isinstance(roles, list):
38
+ raise TypeError("Expected argument 'roles' to be a list")
39
+ pulumi.set(__self__, "roles", roles)
40
+ if show_deleted and not isinstance(show_deleted, bool):
41
+ raise TypeError("Expected argument 'show_deleted' to be a bool")
42
+ pulumi.set(__self__, "show_deleted", show_deleted)
43
+ if view and not isinstance(view, str):
44
+ raise TypeError("Expected argument 'view' to be a str")
45
+ pulumi.set(__self__, "view", view)
46
+
47
+ @property
48
+ @pulumi.getter
49
+ def id(self) -> str:
50
+ """
51
+ The provider-assigned unique ID for this managed resource.
52
+ """
53
+ return pulumi.get(self, "id")
54
+
55
+ @property
56
+ @pulumi.getter
57
+ def project(self) -> Optional[str]:
58
+ return pulumi.get(self, "project")
59
+
60
+ @property
61
+ @pulumi.getter
62
+ def roles(self) -> Sequence['outputs.GetIamCustomRolesRoleResult']:
63
+ """
64
+ A list of all retrieved custom roles roles. Structure is defined below.
65
+ """
66
+ return pulumi.get(self, "roles")
67
+
68
+ @property
69
+ @pulumi.getter(name="showDeleted")
70
+ def show_deleted(self) -> Optional[bool]:
71
+ return pulumi.get(self, "show_deleted")
72
+
73
+ @property
74
+ @pulumi.getter
75
+ def view(self) -> Optional[str]:
76
+ return pulumi.get(self, "view")
77
+
78
+
79
+ class AwaitableGetIamCustomRolesResult(GetIamCustomRolesResult):
80
+ # pylint: disable=using-constant-test
81
+ def __await__(self):
82
+ if False:
83
+ yield self
84
+ return GetIamCustomRolesResult(
85
+ id=self.id,
86
+ project=self.project,
87
+ roles=self.roles,
88
+ show_deleted=self.show_deleted,
89
+ view=self.view)
90
+
91
+
92
+ def get_iam_custom_roles(project: Optional[str] = None,
93
+ show_deleted: Optional[bool] = None,
94
+ view: Optional[str] = None,
95
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIamCustomRolesResult:
96
+ """
97
+ Get information about Google Cloud IAM Custom Roles from a project.
98
+ Note that you must have the `roles/iam.roleViewer`.
99
+ See [the official documentation](https://cloud.google.com/iam/docs/creating-custom-roles)
100
+ and [API](https://cloud.google.com/iam/docs/reference/rest/v1/projects.roles/list).
101
+
102
+ ```python
103
+ import pulumi
104
+ import pulumi_gcp as gcp
105
+
106
+ example = gcp.projects.get_iam_custom_roles(project="your-project-id",
107
+ show_deleted=True,
108
+ view="FULL")
109
+ ```
110
+
111
+
112
+ :param str project: The project were the custom role has been created in. Defaults to the provider project configuration.
113
+ :param bool show_deleted: Include Roles that have been deleted. Defaults to `false`.
114
+ :param str view: When `"FULL"` is specified, the `permissions` field is returned, which includes a list of all permissions in the role. The default value is `"BASIC"`, which does not return the `permissions`.
115
+ """
116
+ __args__ = dict()
117
+ __args__['project'] = project
118
+ __args__['showDeleted'] = show_deleted
119
+ __args__['view'] = view
120
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
121
+ __ret__ = pulumi.runtime.invoke('gcp:projects/getIamCustomRoles:getIamCustomRoles', __args__, opts=opts, typ=GetIamCustomRolesResult).value
122
+
123
+ return AwaitableGetIamCustomRolesResult(
124
+ id=pulumi.get(__ret__, 'id'),
125
+ project=pulumi.get(__ret__, 'project'),
126
+ roles=pulumi.get(__ret__, 'roles'),
127
+ show_deleted=pulumi.get(__ret__, 'show_deleted'),
128
+ view=pulumi.get(__ret__, 'view'))
129
+ def get_iam_custom_roles_output(project: Optional[pulumi.Input[Optional[str]]] = None,
130
+ show_deleted: Optional[pulumi.Input[Optional[bool]]] = None,
131
+ view: Optional[pulumi.Input[Optional[str]]] = None,
132
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetIamCustomRolesResult]:
133
+ """
134
+ Get information about Google Cloud IAM Custom Roles from a project.
135
+ Note that you must have the `roles/iam.roleViewer`.
136
+ See [the official documentation](https://cloud.google.com/iam/docs/creating-custom-roles)
137
+ and [API](https://cloud.google.com/iam/docs/reference/rest/v1/projects.roles/list).
138
+
139
+ ```python
140
+ import pulumi
141
+ import pulumi_gcp as gcp
142
+
143
+ example = gcp.projects.get_iam_custom_roles(project="your-project-id",
144
+ show_deleted=True,
145
+ view="FULL")
146
+ ```
147
+
148
+
149
+ :param str project: The project were the custom role has been created in. Defaults to the provider project configuration.
150
+ :param bool show_deleted: Include Roles that have been deleted. Defaults to `false`.
151
+ :param str view: When `"FULL"` is specified, the `permissions` field is returned, which includes a list of all permissions in the role. The default value is `"BASIC"`, which does not return the `permissions`.
152
+ """
153
+ __args__ = dict()
154
+ __args__['project'] = project
155
+ __args__['showDeleted'] = show_deleted
156
+ __args__['view'] = view
157
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
158
+ __ret__ = pulumi.runtime.invoke_output('gcp:projects/getIamCustomRoles:getIamCustomRoles', __args__, opts=opts, typ=GetIamCustomRolesResult)
159
+ return __ret__.apply(lambda __response__: GetIamCustomRolesResult(
160
+ id=pulumi.get(__response__, 'id'),
161
+ project=pulumi.get(__response__, 'project'),
162
+ roles=pulumi.get(__response__, 'roles'),
163
+ show_deleted=pulumi.get(__response__, 'show_deleted'),
164
+ view=pulumi.get(__response__, 'view')))
@@ -33,6 +33,7 @@ __all__ = [
33
33
  'OrganizationPolicyListPolicyDeny',
34
34
  'OrganizationPolicyRestorePolicy',
35
35
  'GetAncestryAncestorResult',
36
+ 'GetIamCustomRolesRoleResult',
36
37
  'GetOrganizationPolicyBooleanPolicyResult',
37
38
  'GetOrganizationPolicyListPolicyResult',
38
39
  'GetOrganizationPolicyListPolicyAllowResult',
@@ -786,6 +787,101 @@ class GetAncestryAncestorResult(dict):
786
787
  return pulumi.get(self, "type")
787
788
 
788
789
 
790
+ @pulumi.output_type
791
+ class GetIamCustomRolesRoleResult(dict):
792
+ def __init__(__self__, *,
793
+ deleted: bool,
794
+ description: str,
795
+ id: str,
796
+ name: str,
797
+ permissions: Sequence[str],
798
+ role_id: str,
799
+ stage: str,
800
+ title: str):
801
+ """
802
+ :param bool deleted: The current deleted state of the role.
803
+ :param str description: A human-readable description for the role.
804
+ :param str id: an identifier for the resource with the format `projects/{{project}}/roles/{{role_id}}`.
805
+ :param str name: The name of the role in the format `projects/{{project}}/roles/{{role_id}}`. Like `id`, this field can be used as a reference in other resources such as IAM role bindings.
806
+ :param Sequence[str] permissions: The names of the permissions this role grants when bound in an IAM policy.
807
+ :param str role_id: The camel case role id used for this role.
808
+ :param str stage: The current launch stage of the role. List of possible stages is [here](https://cloud.google.com/iam/reference/rest/v1/organizations.roles#Role.RoleLaunchStage).
809
+ :param str title: A human-readable title for the role.
810
+ """
811
+ pulumi.set(__self__, "deleted", deleted)
812
+ pulumi.set(__self__, "description", description)
813
+ pulumi.set(__self__, "id", id)
814
+ pulumi.set(__self__, "name", name)
815
+ pulumi.set(__self__, "permissions", permissions)
816
+ pulumi.set(__self__, "role_id", role_id)
817
+ pulumi.set(__self__, "stage", stage)
818
+ pulumi.set(__self__, "title", title)
819
+
820
+ @property
821
+ @pulumi.getter
822
+ def deleted(self) -> bool:
823
+ """
824
+ The current deleted state of the role.
825
+ """
826
+ return pulumi.get(self, "deleted")
827
+
828
+ @property
829
+ @pulumi.getter
830
+ def description(self) -> str:
831
+ """
832
+ A human-readable description for the role.
833
+ """
834
+ return pulumi.get(self, "description")
835
+
836
+ @property
837
+ @pulumi.getter
838
+ def id(self) -> str:
839
+ """
840
+ an identifier for the resource with the format `projects/{{project}}/roles/{{role_id}}`.
841
+ """
842
+ return pulumi.get(self, "id")
843
+
844
+ @property
845
+ @pulumi.getter
846
+ def name(self) -> str:
847
+ """
848
+ The name of the role in the format `projects/{{project}}/roles/{{role_id}}`. Like `id`, this field can be used as a reference in other resources such as IAM role bindings.
849
+ """
850
+ return pulumi.get(self, "name")
851
+
852
+ @property
853
+ @pulumi.getter
854
+ def permissions(self) -> Sequence[str]:
855
+ """
856
+ The names of the permissions this role grants when bound in an IAM policy.
857
+ """
858
+ return pulumi.get(self, "permissions")
859
+
860
+ @property
861
+ @pulumi.getter(name="roleId")
862
+ def role_id(self) -> str:
863
+ """
864
+ The camel case role id used for this role.
865
+ """
866
+ return pulumi.get(self, "role_id")
867
+
868
+ @property
869
+ @pulumi.getter
870
+ def stage(self) -> str:
871
+ """
872
+ The current launch stage of the role. List of possible stages is [here](https://cloud.google.com/iam/reference/rest/v1/organizations.roles#Role.RoleLaunchStage).
873
+ """
874
+ return pulumi.get(self, "stage")
875
+
876
+ @property
877
+ @pulumi.getter
878
+ def title(self) -> str:
879
+ """
880
+ A human-readable title for the role.
881
+ """
882
+ return pulumi.get(self, "title")
883
+
884
+
789
885
  @pulumi.output_type
790
886
  class GetOrganizationPolicyBooleanPolicyResult(dict):
791
887
  def __init__(__self__, *,