pulumi-gcp 7.18.0a1712687150__py3-none-any.whl → 7.19.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 (343) hide show
  1. pulumi_gcp/__init__.py +11 -0
  2. pulumi_gcp/accesscontextmanager/access_policy.py +4 -4
  3. pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +136 -47
  4. pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +136 -47
  5. pulumi_gcp/accesscontextmanager/access_policy_iam_policy.py +90 -84
  6. pulumi_gcp/apigateway/api_config_iam_binding.py +147 -52
  7. pulumi_gcp/apigateway/api_config_iam_member.py +147 -52
  8. pulumi_gcp/apigateway/api_config_iam_policy.py +96 -84
  9. pulumi_gcp/apigateway/api_iam_binding.py +147 -52
  10. pulumi_gcp/apigateway/api_iam_member.py +147 -52
  11. pulumi_gcp/apigateway/api_iam_policy.py +96 -84
  12. pulumi_gcp/apigateway/gateway_iam_binding.py +153 -52
  13. pulumi_gcp/apigateway/gateway_iam_member.py +153 -52
  14. pulumi_gcp/apigateway/gateway_iam_policy.py +102 -84
  15. pulumi_gcp/apigee/environment_iam_binding.py +139 -44
  16. pulumi_gcp/apigee/environment_iam_member.py +139 -44
  17. pulumi_gcp/apigee/environment_iam_policy.py +96 -84
  18. pulumi_gcp/apigee/sync_authorization.py +4 -4
  19. pulumi_gcp/applicationintegration/client.py +22 -14
  20. pulumi_gcp/artifactregistry/repository_iam_binding.py +156 -55
  21. pulumi_gcp/artifactregistry/repository_iam_member.py +156 -55
  22. pulumi_gcp/artifactregistry/repository_iam_policy.py +102 -84
  23. pulumi_gcp/bigquery/connection_iam_binding.py +158 -57
  24. pulumi_gcp/bigquery/connection_iam_member.py +158 -57
  25. pulumi_gcp/bigquery/connection_iam_policy.py +102 -84
  26. pulumi_gcp/bigquery/dataset_iam_binding.py +135 -40
  27. pulumi_gcp/bigquery/dataset_iam_member.py +135 -40
  28. pulumi_gcp/bigquery/dataset_iam_policy.py +96 -70
  29. pulumi_gcp/bigquery/iam_binding.py +283 -54
  30. pulumi_gcp/bigquery/iam_member.py +283 -54
  31. pulumi_gcp/bigquery/iam_policy.py +230 -84
  32. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +155 -54
  33. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +155 -54
  34. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +102 -84
  35. pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +161 -54
  36. pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +161 -54
  37. pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +108 -84
  38. pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +155 -54
  39. pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +155 -54
  40. pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +102 -84
  41. pulumi_gcp/bigtable/instance_iam_binding.py +123 -32
  42. pulumi_gcp/bigtable/instance_iam_member.py +123 -32
  43. pulumi_gcp/bigtable/instance_iam_policy.py +92 -63
  44. pulumi_gcp/bigtable/table_iam_binding.py +160 -63
  45. pulumi_gcp/bigtable/table_iam_member.py +160 -63
  46. pulumi_gcp/bigtable/table_iam_policy.py +98 -63
  47. pulumi_gcp/billing/account_iam_binding.py +120 -31
  48. pulumi_gcp/billing/account_iam_member.py +120 -31
  49. pulumi_gcp/billing/account_iam_policy.py +90 -49
  50. pulumi_gcp/binaryauthorization/attestor_iam_binding.py +147 -52
  51. pulumi_gcp/binaryauthorization/attestor_iam_member.py +147 -52
  52. pulumi_gcp/binaryauthorization/attestor_iam_policy.py +96 -84
  53. pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +262 -57
  54. pulumi_gcp/certificateauthority/ca_pool_iam_member.py +262 -57
  55. pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +206 -84
  56. pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +259 -54
  57. pulumi_gcp/certificateauthority/certificate_template_iam_member.py +259 -54
  58. pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +206 -84
  59. pulumi_gcp/cloudbuildv2/connection_iam_binding.py +161 -60
  60. pulumi_gcp/cloudbuildv2/connection_iam_member.py +161 -60
  61. pulumi_gcp/cloudbuildv2/connection_iam_policy.py +102 -84
  62. pulumi_gcp/cloudfunctions/function_iam_binding.py +153 -52
  63. pulumi_gcp/cloudfunctions/function_iam_member.py +153 -52
  64. pulumi_gcp/cloudfunctions/function_iam_policy.py +102 -84
  65. pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +154 -53
  66. pulumi_gcp/cloudfunctionsv2/function_iam_member.py +154 -53
  67. pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +102 -84
  68. pulumi_gcp/cloudrun/iam_binding.py +155 -54
  69. pulumi_gcp/cloudrun/iam_member.py +155 -54
  70. pulumi_gcp/cloudrun/iam_policy.py +102 -84
  71. pulumi_gcp/cloudrunv2/_inputs.py +73 -0
  72. pulumi_gcp/cloudrunv2/job_iam_binding.py +161 -60
  73. pulumi_gcp/cloudrunv2/job_iam_member.py +161 -60
  74. pulumi_gcp/cloudrunv2/job_iam_policy.py +102 -84
  75. pulumi_gcp/cloudrunv2/outputs.py +126 -0
  76. pulumi_gcp/cloudrunv2/service_iam_binding.py +161 -60
  77. pulumi_gcp/cloudrunv2/service_iam_member.py +161 -60
  78. pulumi_gcp/cloudrunv2/service_iam_policy.py +102 -84
  79. pulumi_gcp/cloudtasks/queue_iam_binding.py +161 -60
  80. pulumi_gcp/cloudtasks/queue_iam_member.py +161 -60
  81. pulumi_gcp/cloudtasks/queue_iam_policy.py +102 -84
  82. pulumi_gcp/compute/_inputs.py +24 -0
  83. pulumi_gcp/compute/backend_bucket_iam_binding.py +58 -59
  84. pulumi_gcp/compute/backend_bucket_iam_member.py +58 -59
  85. pulumi_gcp/compute/backend_bucket_iam_policy.py +0 -84
  86. pulumi_gcp/compute/backend_service_iam_binding.py +60 -61
  87. pulumi_gcp/compute/backend_service_iam_member.py +60 -61
  88. pulumi_gcp/compute/backend_service_iam_policy.py +0 -84
  89. pulumi_gcp/compute/disk_iam_binding.py +160 -59
  90. pulumi_gcp/compute/disk_iam_member.py +160 -59
  91. pulumi_gcp/compute/disk_iam_policy.py +102 -84
  92. pulumi_gcp/compute/get_router_nat.py +11 -1
  93. pulumi_gcp/compute/image_iam_binding.py +271 -54
  94. pulumi_gcp/compute/image_iam_member.py +271 -54
  95. pulumi_gcp/compute/image_iam_policy.py +218 -84
  96. pulumi_gcp/compute/instance_iam_binding.py +283 -54
  97. pulumi_gcp/compute/instance_iam_member.py +283 -54
  98. pulumi_gcp/compute/instance_iam_policy.py +230 -84
  99. pulumi_gcp/compute/instance_settings.py +16 -0
  100. pulumi_gcp/compute/machine_image_iam_binding.py +271 -54
  101. pulumi_gcp/compute/machine_image_iam_member.py +271 -54
  102. pulumi_gcp/compute/machine_image_iam_policy.py +218 -84
  103. pulumi_gcp/compute/outputs.py +41 -0
  104. pulumi_gcp/compute/region_backend_service_iam_binding.py +60 -61
  105. pulumi_gcp/compute/region_backend_service_iam_member.py +60 -61
  106. pulumi_gcp/compute/region_backend_service_iam_policy.py +0 -84
  107. pulumi_gcp/compute/region_disk_iam_binding.py +160 -59
  108. pulumi_gcp/compute/region_disk_iam_member.py +160 -59
  109. pulumi_gcp/compute/region_disk_iam_policy.py +102 -84
  110. pulumi_gcp/compute/router_interface.py +47 -0
  111. pulumi_gcp/compute/router_nat.py +68 -0
  112. pulumi_gcp/compute/router_peer.py +141 -0
  113. pulumi_gcp/compute/snapshot_iam_binding.py +154 -59
  114. pulumi_gcp/compute/snapshot_iam_member.py +154 -59
  115. pulumi_gcp/compute/snapshot_iam_policy.py +96 -84
  116. pulumi_gcp/compute/subnetwork_iam_binding.py +284 -55
  117. pulumi_gcp/compute/subnetwork_iam_member.py +284 -55
  118. pulumi_gcp/compute/subnetwork_iam_policy.py +230 -84
  119. pulumi_gcp/config/__init__.pyi +2 -0
  120. pulumi_gcp/config/vars.py +4 -0
  121. pulumi_gcp/container/_inputs.py +65 -8
  122. pulumi_gcp/container/cluster.py +47 -0
  123. pulumi_gcp/container/get_cluster.py +11 -1
  124. pulumi_gcp/container/outputs.py +94 -10
  125. pulumi_gcp/containeranalysis/note_iam_binding.py +154 -59
  126. pulumi_gcp/containeranalysis/note_iam_member.py +154 -59
  127. pulumi_gcp/containeranalysis/note_iam_policy.py +96 -84
  128. pulumi_gcp/datacatalog/entry_group_iam_binding.py +141 -52
  129. pulumi_gcp/datacatalog/entry_group_iam_member.py +141 -52
  130. pulumi_gcp/datacatalog/entry_group_iam_policy.py +90 -84
  131. pulumi_gcp/datacatalog/policy_tag_iam_binding.py +133 -44
  132. pulumi_gcp/datacatalog/policy_tag_iam_member.py +133 -44
  133. pulumi_gcp/datacatalog/policy_tag_iam_policy.py +90 -84
  134. pulumi_gcp/datacatalog/tag_template_iam_binding.py +142 -53
  135. pulumi_gcp/datacatalog/tag_template_iam_member.py +142 -53
  136. pulumi_gcp/datacatalog/tag_template_iam_policy.py +90 -84
  137. pulumi_gcp/datacatalog/taxonomy_iam_binding.py +142 -53
  138. pulumi_gcp/datacatalog/taxonomy_iam_member.py +142 -53
  139. pulumi_gcp/datacatalog/taxonomy_iam_policy.py +90 -84
  140. pulumi_gcp/dataplex/asset_iam_binding.py +165 -52
  141. pulumi_gcp/dataplex/asset_iam_member.py +165 -52
  142. pulumi_gcp/dataplex/asset_iam_policy.py +114 -84
  143. pulumi_gcp/dataplex/datascan_iam_binding.py +155 -54
  144. pulumi_gcp/dataplex/datascan_iam_member.py +155 -54
  145. pulumi_gcp/dataplex/datascan_iam_policy.py +102 -84
  146. pulumi_gcp/dataplex/lake_iam_binding.py +153 -52
  147. pulumi_gcp/dataplex/lake_iam_member.py +153 -52
  148. pulumi_gcp/dataplex/lake_iam_policy.py +102 -84
  149. pulumi_gcp/dataplex/task_iam_binding.py +161 -54
  150. pulumi_gcp/dataplex/task_iam_member.py +161 -54
  151. pulumi_gcp/dataplex/task_iam_policy.py +108 -84
  152. pulumi_gcp/dataplex/zone_iam_binding.py +159 -52
  153. pulumi_gcp/dataplex/zone_iam_member.py +159 -52
  154. pulumi_gcp/dataplex/zone_iam_policy.py +108 -84
  155. pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +173 -72
  156. pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +173 -72
  157. pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +102 -84
  158. pulumi_gcp/dataproc/cluster_iam_binding.py +130 -37
  159. pulumi_gcp/dataproc/cluster_iam_member.py +130 -37
  160. pulumi_gcp/dataproc/cluster_iam_policy.py +94 -63
  161. pulumi_gcp/dataproc/job_iam_binding.py +156 -0
  162. pulumi_gcp/dataproc/job_iam_member.py +156 -0
  163. pulumi_gcp/dataproc/job_iam_policy.py +94 -0
  164. pulumi_gcp/dataproc/metastore_federation_iam_binding.py +53 -54
  165. pulumi_gcp/dataproc/metastore_federation_iam_member.py +53 -54
  166. pulumi_gcp/dataproc/metastore_federation_iam_policy.py +0 -84
  167. pulumi_gcp/dataproc/metastore_service_iam_binding.py +156 -55
  168. pulumi_gcp/dataproc/metastore_service_iam_member.py +156 -55
  169. pulumi_gcp/dataproc/metastore_service_iam_policy.py +102 -84
  170. pulumi_gcp/datastore/data_store_index.py +14 -0
  171. pulumi_gcp/dns/_inputs.py +22 -22
  172. pulumi_gcp/dns/dns_managed_zone_iam_binding.py +147 -52
  173. pulumi_gcp/dns/dns_managed_zone_iam_member.py +147 -52
  174. pulumi_gcp/dns/dns_managed_zone_iam_policy.py +96 -84
  175. pulumi_gcp/dns/outputs.py +22 -22
  176. pulumi_gcp/endpoints/consumers_iam_binding.py +83 -0
  177. pulumi_gcp/endpoints/consumers_iam_member.py +83 -0
  178. pulumi_gcp/endpoints/service_iam_binding.py +173 -0
  179. pulumi_gcp/endpoints/service_iam_member.py +173 -0
  180. pulumi_gcp/endpoints/service_iam_policy.py +90 -0
  181. pulumi_gcp/firestore/_inputs.py +80 -11
  182. pulumi_gcp/firestore/backup_schedule.py +9 -9
  183. pulumi_gcp/firestore/document.py +0 -4
  184. pulumi_gcp/firestore/index.py +116 -42
  185. pulumi_gcp/firestore/outputs.py +70 -11
  186. pulumi_gcp/folder/iam_audit_config.py +270 -0
  187. pulumi_gcp/folder/iam_member.py +318 -0
  188. pulumi_gcp/folder/iam_policy.py +270 -0
  189. pulumi_gcp/gkebackup/_inputs.py +358 -3
  190. pulumi_gcp/gkebackup/backup_plan.py +294 -0
  191. pulumi_gcp/gkebackup/backup_plan_iam_binding.py +162 -61
  192. pulumi_gcp/gkebackup/backup_plan_iam_member.py +162 -61
  193. pulumi_gcp/gkebackup/backup_plan_iam_policy.py +102 -84
  194. pulumi_gcp/gkebackup/outputs.py +353 -3
  195. pulumi_gcp/gkehub/feature_iam_binding.py +161 -60
  196. pulumi_gcp/gkehub/feature_iam_member.py +161 -60
  197. pulumi_gcp/gkehub/feature_iam_policy.py +102 -84
  198. pulumi_gcp/gkehub/membership_iam_binding.py +159 -58
  199. pulumi_gcp/gkehub/membership_iam_member.py +159 -58
  200. pulumi_gcp/gkehub/membership_iam_policy.py +102 -84
  201. pulumi_gcp/gkehub/scope_iam_binding.py +147 -52
  202. pulumi_gcp/gkehub/scope_iam_member.py +147 -52
  203. pulumi_gcp/gkehub/scope_iam_policy.py +96 -84
  204. pulumi_gcp/gkeonprem/v_mware_cluster.py +49 -0
  205. pulumi_gcp/healthcare/consent_store_iam_binding.py +139 -44
  206. pulumi_gcp/healthcare/consent_store_iam_member.py +139 -44
  207. pulumi_gcp/healthcare/consent_store_iam_policy.py +96 -84
  208. pulumi_gcp/healthcare/dataset_iam_binding.py +126 -37
  209. pulumi_gcp/healthcare/dataset_iam_member.py +126 -37
  210. pulumi_gcp/healthcare/dataset_iam_policy.py +90 -63
  211. pulumi_gcp/healthcare/dicom_store_iam_binding.py +126 -37
  212. pulumi_gcp/healthcare/dicom_store_iam_member.py +126 -37
  213. pulumi_gcp/healthcare/dicom_store_iam_policy.py +90 -63
  214. pulumi_gcp/healthcare/fhir_store_iam_binding.py +121 -32
  215. pulumi_gcp/healthcare/fhir_store_iam_member.py +121 -32
  216. pulumi_gcp/healthcare/fhir_store_iam_policy.py +90 -63
  217. pulumi_gcp/healthcare/hl7_store_iam_binding.py +121 -32
  218. pulumi_gcp/healthcare/hl7_store_iam_member.py +121 -32
  219. pulumi_gcp/healthcare/hl7_store_iam_policy.py +90 -63
  220. pulumi_gcp/iap/app_engine_service_iam_binding.py +284 -55
  221. pulumi_gcp/iap/app_engine_service_iam_member.py +284 -55
  222. pulumi_gcp/iap/app_engine_service_iam_policy.py +230 -84
  223. pulumi_gcp/iap/app_engine_version_iam_binding.py +297 -56
  224. pulumi_gcp/iap/app_engine_version_iam_member.py +297 -56
  225. pulumi_gcp/iap/app_engine_version_iam_policy.py +242 -84
  226. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +283 -54
  227. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +283 -54
  228. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +230 -84
  229. pulumi_gcp/iap/tunnel_iam_binding.py +259 -54
  230. pulumi_gcp/iap/tunnel_iam_member.py +259 -54
  231. pulumi_gcp/iap/tunnel_iam_policy.py +206 -84
  232. pulumi_gcp/iap/tunnel_instance_iam_binding.py +283 -54
  233. pulumi_gcp/iap/tunnel_instance_iam_member.py +283 -54
  234. pulumi_gcp/iap/tunnel_instance_iam_policy.py +230 -84
  235. pulumi_gcp/iap/web_backend_service_iam_binding.py +272 -55
  236. pulumi_gcp/iap/web_backend_service_iam_member.py +272 -55
  237. pulumi_gcp/iap/web_backend_service_iam_policy.py +218 -84
  238. pulumi_gcp/iap/web_iam_binding.py +259 -54
  239. pulumi_gcp/iap/web_iam_member.py +259 -54
  240. pulumi_gcp/iap/web_iam_policy.py +206 -84
  241. pulumi_gcp/iap/web_region_backend_service_iam_binding.py +284 -55
  242. pulumi_gcp/iap/web_region_backend_service_iam_member.py +284 -55
  243. pulumi_gcp/iap/web_region_backend_service_iam_policy.py +230 -84
  244. pulumi_gcp/iap/web_type_app_enging_iam_binding.py +271 -54
  245. pulumi_gcp/iap/web_type_app_enging_iam_member.py +271 -54
  246. pulumi_gcp/iap/web_type_app_enging_iam_policy.py +218 -84
  247. pulumi_gcp/iap/web_type_compute_iam_binding.py +259 -54
  248. pulumi_gcp/iap/web_type_compute_iam_member.py +259 -54
  249. pulumi_gcp/iap/web_type_compute_iam_policy.py +206 -84
  250. pulumi_gcp/kms/crypto_key_iam_binding.py +36 -37
  251. pulumi_gcp/kms/crypto_key_iam_member.py +36 -37
  252. pulumi_gcp/kms/crypto_key_iam_policy.py +0 -63
  253. pulumi_gcp/kms/key_ring_iam_binding.py +253 -32
  254. pulumi_gcp/kms/key_ring_iam_member.py +253 -32
  255. pulumi_gcp/kms/key_ring_iam_policy.py +222 -63
  256. pulumi_gcp/looker/instance.py +20 -30
  257. pulumi_gcp/networksecurity/address_group_iam_policy.py +0 -84
  258. pulumi_gcp/networksecurity/firewall_endpoint.py +2 -0
  259. pulumi_gcp/networksecurity/firewall_endpoint_association.py +61 -0
  260. pulumi_gcp/notebooks/instance_iam_binding.py +154 -53
  261. pulumi_gcp/notebooks/instance_iam_member.py +154 -53
  262. pulumi_gcp/notebooks/instance_iam_policy.py +102 -84
  263. pulumi_gcp/notebooks/runtime_iam_binding.py +155 -54
  264. pulumi_gcp/notebooks/runtime_iam_member.py +155 -54
  265. pulumi_gcp/notebooks/runtime_iam_policy.py +102 -84
  266. pulumi_gcp/organizations/iam_member.py +330 -0
  267. pulumi_gcp/organizations/iam_policy.py +282 -0
  268. pulumi_gcp/parallelstore/__init__.py +8 -0
  269. pulumi_gcp/parallelstore/instance.py +1128 -0
  270. pulumi_gcp/projects/iam_audit_config.py +270 -0
  271. pulumi_gcp/projects/iam_binding.py +318 -0
  272. pulumi_gcp/projects/iam_member.py +318 -0
  273. pulumi_gcp/projects/iam_policy.py +270 -0
  274. pulumi_gcp/provider.py +20 -0
  275. pulumi_gcp/pubsub/schema_iam_binding.py +148 -53
  276. pulumi_gcp/pubsub/schema_iam_member.py +148 -53
  277. pulumi_gcp/pubsub/schema_iam_policy.py +96 -84
  278. pulumi_gcp/pubsub/subscription_iam_binding.py +146 -57
  279. pulumi_gcp/pubsub/subscription_iam_member.py +146 -57
  280. pulumi_gcp/pubsub/subscription_iam_policy.py +90 -63
  281. pulumi_gcp/pubsub/topic_iam_binding.py +148 -53
  282. pulumi_gcp/pubsub/topic_iam_member.py +148 -53
  283. pulumi_gcp/pubsub/topic_iam_policy.py +96 -84
  284. pulumi_gcp/redis/cluster.py +91 -0
  285. pulumi_gcp/runtimeconfig/config_iam_binding.py +51 -52
  286. pulumi_gcp/runtimeconfig/config_iam_member.py +51 -52
  287. pulumi_gcp/runtimeconfig/config_iam_policy.py +0 -84
  288. pulumi_gcp/secretmanager/secret_iam_binding.py +147 -52
  289. pulumi_gcp/secretmanager/secret_iam_member.py +147 -52
  290. pulumi_gcp/secretmanager/secret_iam_policy.py +96 -84
  291. pulumi_gcp/serviceaccount/iam_binding.py +262 -51
  292. pulumi_gcp/serviceaccount/iam_member.py +262 -51
  293. pulumi_gcp/serviceaccount/iam_policy.py +212 -63
  294. pulumi_gcp/servicedirectory/namespace_iam_binding.py +136 -47
  295. pulumi_gcp/servicedirectory/namespace_iam_member.py +136 -47
  296. pulumi_gcp/servicedirectory/namespace_iam_policy.py +90 -84
  297. pulumi_gcp/servicedirectory/service_iam_binding.py +136 -47
  298. pulumi_gcp/servicedirectory/service_iam_member.py +136 -47
  299. pulumi_gcp/servicedirectory/service_iam_policy.py +90 -84
  300. pulumi_gcp/sourcerepo/repository_iam_binding.py +147 -52
  301. pulumi_gcp/sourcerepo/repository_iam_member.py +147 -52
  302. pulumi_gcp/sourcerepo/repository_iam_policy.py +96 -84
  303. pulumi_gcp/spanner/database_iam_binding.py +253 -32
  304. pulumi_gcp/spanner/database_iam_member.py +253 -32
  305. pulumi_gcp/spanner/database_iam_policy.py +222 -63
  306. pulumi_gcp/spanner/instance_iam_binding.py +121 -32
  307. pulumi_gcp/spanner/instance_iam_member.py +121 -32
  308. pulumi_gcp/spanner/instance_iam_policy.py +90 -63
  309. pulumi_gcp/sql/_inputs.py +16 -0
  310. pulumi_gcp/sql/outputs.py +36 -0
  311. pulumi_gcp/storage/bucket.py +28 -0
  312. pulumi_gcp/storage/bucket_iam_binding.py +255 -50
  313. pulumi_gcp/storage/bucket_iam_member.py +255 -50
  314. pulumi_gcp/storage/bucket_iam_policy.py +206 -84
  315. pulumi_gcp/storage/get_bucket.py +17 -2
  316. pulumi_gcp/tags/__init__.py +2 -0
  317. pulumi_gcp/tags/get_tag_keys.py +101 -0
  318. pulumi_gcp/tags/get_tag_values.py +101 -0
  319. pulumi_gcp/tags/outputs.py +200 -0
  320. pulumi_gcp/tags/tag_key_iam_binding.py +149 -60
  321. pulumi_gcp/tags/tag_key_iam_member.py +149 -60
  322. pulumi_gcp/tags/tag_key_iam_policy.py +90 -84
  323. pulumi_gcp/tags/tag_value_iam_binding.py +149 -60
  324. pulumi_gcp/tags/tag_value_iam_member.py +149 -60
  325. pulumi_gcp/tags/tag_value_iam_policy.py +90 -84
  326. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_binding.py +33 -34
  327. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_member.py +33 -34
  328. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_policy.py +0 -84
  329. pulumi_gcp/vertex/ai_feature_store_iam_binding.py +51 -52
  330. pulumi_gcp/vertex/ai_feature_store_iam_member.py +51 -52
  331. pulumi_gcp/vertex/ai_feature_store_iam_policy.py +0 -84
  332. pulumi_gcp/vmwareengine/get_private_cloud.py +21 -1
  333. pulumi_gcp/vmwareengine/private_cloud.py +101 -7
  334. pulumi_gcp/workstations/workstation_config_iam_binding.py +53 -54
  335. pulumi_gcp/workstations/workstation_config_iam_member.py +53 -54
  336. pulumi_gcp/workstations/workstation_config_iam_policy.py +0 -84
  337. pulumi_gcp/workstations/workstation_iam_binding.py +53 -54
  338. pulumi_gcp/workstations/workstation_iam_member.py +53 -54
  339. pulumi_gcp/workstations/workstation_iam_policy.py +0 -84
  340. {pulumi_gcp-7.18.0a1712687150.dist-info → pulumi_gcp-7.19.0.dist-info}/METADATA +1 -1
  341. {pulumi_gcp-7.18.0a1712687150.dist-info → pulumi_gcp-7.19.0.dist-info}/RECORD +343 -339
  342. {pulumi_gcp-7.18.0a1712687150.dist-info → pulumi_gcp-7.19.0.dist-info}/WHEEL +0 -0
  343. {pulumi_gcp-7.18.0a1712687150.dist-info → pulumi_gcp-7.19.0.dist-info}/top_level.txt +0 -0
@@ -19,18 +19,6 @@ class BucketIAMPolicyArgs:
19
19
  """
20
20
  The set of arguments for constructing a BucketIAMPolicy resource.
21
21
  :param pulumi.Input[str] bucket: Used to find the parent resource to bind the IAM policy to
22
-
23
- * `member/members` - (Required) Identities that will be granted the privilege in `role`.
24
- Each entry can have one of the following values:
25
- * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
26
- * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
27
- * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
28
- * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
29
- * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
30
- * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
31
- * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
32
- * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
33
- * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
34
22
  :param pulumi.Input[str] policy_data: The policy data generated by
35
23
  a `organizations_get_iam_policy` data source.
36
24
  """
@@ -42,18 +30,6 @@ class BucketIAMPolicyArgs:
42
30
  def bucket(self) -> pulumi.Input[str]:
43
31
  """
44
32
  Used to find the parent resource to bind the IAM policy to
45
-
46
- * `member/members` - (Required) Identities that will be granted the privilege in `role`.
47
- Each entry can have one of the following values:
48
- * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
49
- * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
50
- * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
51
- * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
52
- * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
53
- * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
54
- * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
55
- * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
56
- * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
57
33
  """
58
34
  return pulumi.get(self, "bucket")
59
35
 
@@ -84,18 +60,6 @@ class _BucketIAMPolicyState:
84
60
  """
85
61
  Input properties used for looking up and filtering BucketIAMPolicy resources.
86
62
  :param pulumi.Input[str] bucket: Used to find the parent resource to bind the IAM policy to
87
-
88
- * `member/members` - (Required) Identities that will be granted the privilege in `role`.
89
- Each entry can have one of the following values:
90
- * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
91
- * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
92
- * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
93
- * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
94
- * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
95
- * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
96
- * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
97
- * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
98
- * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
99
63
  :param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
100
64
  :param pulumi.Input[str] policy_data: The policy data generated by
101
65
  a `organizations_get_iam_policy` data source.
@@ -112,18 +76,6 @@ class _BucketIAMPolicyState:
112
76
  def bucket(self) -> Optional[pulumi.Input[str]]:
113
77
  """
114
78
  Used to find the parent resource to bind the IAM policy to
115
-
116
- * `member/members` - (Required) Identities that will be granted the privilege in `role`.
117
- Each entry can have one of the following values:
118
- * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
119
- * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
120
- * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
121
- * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
122
- * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
123
- * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
124
- * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
125
- * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
126
- * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
127
79
  """
128
80
  return pulumi.get(self, "bucket")
129
81
 
@@ -285,6 +237,109 @@ class BucketIAMPolicy(pulumi.CustomResource):
285
237
  ```
286
238
  <!--End PulumiCodeChooser -->
287
239
 
240
+ ## google\\_storage\\_bucket\\_iam\\_policy
241
+
242
+ <!--Start PulumiCodeChooser -->
243
+ ```python
244
+ import pulumi
245
+ import pulumi_gcp as gcp
246
+
247
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
248
+ role="roles/storage.admin",
249
+ members=["user:jane@example.com"],
250
+ )])
251
+ policy = gcp.storage.BucketIAMPolicy("policy",
252
+ bucket=default["name"],
253
+ policy_data=admin.policy_data)
254
+ ```
255
+ <!--End PulumiCodeChooser -->
256
+
257
+ With IAM Conditions:
258
+
259
+ <!--Start PulumiCodeChooser -->
260
+ ```python
261
+ import pulumi
262
+ import pulumi_gcp as gcp
263
+
264
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
265
+ role="roles/storage.admin",
266
+ members=["user:jane@example.com"],
267
+ condition=gcp.organizations.GetIAMPolicyBindingConditionArgs(
268
+ title="expires_after_2019_12_31",
269
+ description="Expiring at midnight of 2019-12-31",
270
+ expression="request.time < timestamp(\\"2020-01-01T00:00:00Z\\")",
271
+ ),
272
+ )])
273
+ policy = gcp.storage.BucketIAMPolicy("policy",
274
+ bucket=default["name"],
275
+ policy_data=admin.policy_data)
276
+ ```
277
+ <!--End PulumiCodeChooser -->
278
+ ## google\\_storage\\_bucket\\_iam\\_binding
279
+
280
+ <!--Start PulumiCodeChooser -->
281
+ ```python
282
+ import pulumi
283
+ import pulumi_gcp as gcp
284
+
285
+ binding = gcp.storage.BucketIAMBinding("binding",
286
+ bucket=default["name"],
287
+ role="roles/storage.admin",
288
+ members=["user:jane@example.com"])
289
+ ```
290
+ <!--End PulumiCodeChooser -->
291
+
292
+ With IAM Conditions:
293
+
294
+ <!--Start PulumiCodeChooser -->
295
+ ```python
296
+ import pulumi
297
+ import pulumi_gcp as gcp
298
+
299
+ binding = gcp.storage.BucketIAMBinding("binding",
300
+ bucket=default["name"],
301
+ role="roles/storage.admin",
302
+ members=["user:jane@example.com"],
303
+ condition=gcp.storage.BucketIAMBindingConditionArgs(
304
+ title="expires_after_2019_12_31",
305
+ description="Expiring at midnight of 2019-12-31",
306
+ expression="request.time < timestamp(\\"2020-01-01T00:00:00Z\\")",
307
+ ))
308
+ ```
309
+ <!--End PulumiCodeChooser -->
310
+ ## google\\_storage\\_bucket\\_iam\\_member
311
+
312
+ <!--Start PulumiCodeChooser -->
313
+ ```python
314
+ import pulumi
315
+ import pulumi_gcp as gcp
316
+
317
+ member = gcp.storage.BucketIAMMember("member",
318
+ bucket=default["name"],
319
+ role="roles/storage.admin",
320
+ member="user:jane@example.com")
321
+ ```
322
+ <!--End PulumiCodeChooser -->
323
+
324
+ With IAM Conditions:
325
+
326
+ <!--Start PulumiCodeChooser -->
327
+ ```python
328
+ import pulumi
329
+ import pulumi_gcp as gcp
330
+
331
+ member = gcp.storage.BucketIAMMember("member",
332
+ bucket=default["name"],
333
+ role="roles/storage.admin",
334
+ member="user:jane@example.com",
335
+ condition=gcp.storage.BucketIAMMemberConditionArgs(
336
+ title="expires_after_2019_12_31",
337
+ description="Expiring at midnight of 2019-12-31",
338
+ expression="request.time < timestamp(\\"2020-01-01T00:00:00Z\\")",
339
+ ))
340
+ ```
341
+ <!--End PulumiCodeChooser -->
342
+
288
343
  ## Import
289
344
 
290
345
  For all import syntaxes, the "resource in question" can take any of the following forms:
@@ -322,18 +377,6 @@ class BucketIAMPolicy(pulumi.CustomResource):
322
377
  :param str resource_name: The name of the resource.
323
378
  :param pulumi.ResourceOptions opts: Options for the resource.
324
379
  :param pulumi.Input[str] bucket: Used to find the parent resource to bind the IAM policy to
325
-
326
- * `member/members` - (Required) Identities that will be granted the privilege in `role`.
327
- Each entry can have one of the following values:
328
- * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
329
- * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
330
- * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
331
- * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
332
- * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
333
- * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
334
- * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
335
- * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
336
- * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
337
380
  :param pulumi.Input[str] policy_data: The policy data generated by
338
381
  a `organizations_get_iam_policy` data source.
339
382
  """
@@ -463,6 +506,109 @@ class BucketIAMPolicy(pulumi.CustomResource):
463
506
  ```
464
507
  <!--End PulumiCodeChooser -->
465
508
 
509
+ ## google\\_storage\\_bucket\\_iam\\_policy
510
+
511
+ <!--Start PulumiCodeChooser -->
512
+ ```python
513
+ import pulumi
514
+ import pulumi_gcp as gcp
515
+
516
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
517
+ role="roles/storage.admin",
518
+ members=["user:jane@example.com"],
519
+ )])
520
+ policy = gcp.storage.BucketIAMPolicy("policy",
521
+ bucket=default["name"],
522
+ policy_data=admin.policy_data)
523
+ ```
524
+ <!--End PulumiCodeChooser -->
525
+
526
+ With IAM Conditions:
527
+
528
+ <!--Start PulumiCodeChooser -->
529
+ ```python
530
+ import pulumi
531
+ import pulumi_gcp as gcp
532
+
533
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
534
+ role="roles/storage.admin",
535
+ members=["user:jane@example.com"],
536
+ condition=gcp.organizations.GetIAMPolicyBindingConditionArgs(
537
+ title="expires_after_2019_12_31",
538
+ description="Expiring at midnight of 2019-12-31",
539
+ expression="request.time < timestamp(\\"2020-01-01T00:00:00Z\\")",
540
+ ),
541
+ )])
542
+ policy = gcp.storage.BucketIAMPolicy("policy",
543
+ bucket=default["name"],
544
+ policy_data=admin.policy_data)
545
+ ```
546
+ <!--End PulumiCodeChooser -->
547
+ ## google\\_storage\\_bucket\\_iam\\_binding
548
+
549
+ <!--Start PulumiCodeChooser -->
550
+ ```python
551
+ import pulumi
552
+ import pulumi_gcp as gcp
553
+
554
+ binding = gcp.storage.BucketIAMBinding("binding",
555
+ bucket=default["name"],
556
+ role="roles/storage.admin",
557
+ members=["user:jane@example.com"])
558
+ ```
559
+ <!--End PulumiCodeChooser -->
560
+
561
+ With IAM Conditions:
562
+
563
+ <!--Start PulumiCodeChooser -->
564
+ ```python
565
+ import pulumi
566
+ import pulumi_gcp as gcp
567
+
568
+ binding = gcp.storage.BucketIAMBinding("binding",
569
+ bucket=default["name"],
570
+ role="roles/storage.admin",
571
+ members=["user:jane@example.com"],
572
+ condition=gcp.storage.BucketIAMBindingConditionArgs(
573
+ title="expires_after_2019_12_31",
574
+ description="Expiring at midnight of 2019-12-31",
575
+ expression="request.time < timestamp(\\"2020-01-01T00:00:00Z\\")",
576
+ ))
577
+ ```
578
+ <!--End PulumiCodeChooser -->
579
+ ## google\\_storage\\_bucket\\_iam\\_member
580
+
581
+ <!--Start PulumiCodeChooser -->
582
+ ```python
583
+ import pulumi
584
+ import pulumi_gcp as gcp
585
+
586
+ member = gcp.storage.BucketIAMMember("member",
587
+ bucket=default["name"],
588
+ role="roles/storage.admin",
589
+ member="user:jane@example.com")
590
+ ```
591
+ <!--End PulumiCodeChooser -->
592
+
593
+ With IAM Conditions:
594
+
595
+ <!--Start PulumiCodeChooser -->
596
+ ```python
597
+ import pulumi
598
+ import pulumi_gcp as gcp
599
+
600
+ member = gcp.storage.BucketIAMMember("member",
601
+ bucket=default["name"],
602
+ role="roles/storage.admin",
603
+ member="user:jane@example.com",
604
+ condition=gcp.storage.BucketIAMMemberConditionArgs(
605
+ title="expires_after_2019_12_31",
606
+ description="Expiring at midnight of 2019-12-31",
607
+ expression="request.time < timestamp(\\"2020-01-01T00:00:00Z\\")",
608
+ ))
609
+ ```
610
+ <!--End PulumiCodeChooser -->
611
+
466
612
  ## Import
467
613
 
468
614
  For all import syntaxes, the "resource in question" can take any of the following forms:
@@ -551,18 +697,6 @@ class BucketIAMPolicy(pulumi.CustomResource):
551
697
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
552
698
  :param pulumi.ResourceOptions opts: Options for the resource.
553
699
  :param pulumi.Input[str] bucket: Used to find the parent resource to bind the IAM policy to
554
-
555
- * `member/members` - (Required) Identities that will be granted the privilege in `role`.
556
- Each entry can have one of the following values:
557
- * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
558
- * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
559
- * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
560
- * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
561
- * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
562
- * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
563
- * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
564
- * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
565
- * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
566
700
  :param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
567
701
  :param pulumi.Input[str] policy_data: The policy data generated by
568
702
  a `organizations_get_iam_policy` data source.
@@ -581,18 +715,6 @@ class BucketIAMPolicy(pulumi.CustomResource):
581
715
  def bucket(self) -> pulumi.Output[str]:
582
716
  """
583
717
  Used to find the parent resource to bind the IAM policy to
584
-
585
- * `member/members` - (Required) Identities that will be granted the privilege in `role`.
586
- Each entry can have one of the following values:
587
- * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
588
- * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
589
- * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
590
- * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
591
- * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
592
- * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
593
- * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
594
- * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
595
- * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
596
718
  """
597
719
  return pulumi.get(self, "bucket")
598
720
 
@@ -22,7 +22,7 @@ class GetBucketResult:
22
22
  """
23
23
  A collection of values returned by getBucket.
24
24
  """
25
- def __init__(__self__, autoclasses=None, cors=None, custom_placement_configs=None, default_event_based_hold=None, effective_labels=None, enable_object_retention=None, encryptions=None, force_destroy=None, id=None, labels=None, lifecycle_rules=None, location=None, loggings=None, name=None, project=None, public_access_prevention=None, pulumi_labels=None, requester_pays=None, retention_policies=None, rpo=None, self_link=None, soft_delete_policies=None, storage_class=None, uniform_bucket_level_access=None, url=None, versionings=None, websites=None):
25
+ def __init__(__self__, autoclasses=None, cors=None, custom_placement_configs=None, default_event_based_hold=None, effective_labels=None, enable_object_retention=None, encryptions=None, force_destroy=None, id=None, labels=None, lifecycle_rules=None, location=None, loggings=None, name=None, project=None, project_number=None, public_access_prevention=None, pulumi_labels=None, requester_pays=None, retention_policies=None, rpo=None, self_link=None, soft_delete_policies=None, storage_class=None, uniform_bucket_level_access=None, url=None, versionings=None, websites=None):
26
26
  if autoclasses and not isinstance(autoclasses, list):
27
27
  raise TypeError("Expected argument 'autoclasses' to be a list")
28
28
  pulumi.set(__self__, "autoclasses", autoclasses)
@@ -68,6 +68,9 @@ class GetBucketResult:
68
68
  if project and not isinstance(project, str):
69
69
  raise TypeError("Expected argument 'project' to be a str")
70
70
  pulumi.set(__self__, "project", project)
71
+ if project_number and not isinstance(project_number, int):
72
+ raise TypeError("Expected argument 'project_number' to be a int")
73
+ pulumi.set(__self__, "project_number", project_number)
71
74
  if public_access_prevention and not isinstance(public_access_prevention, str):
72
75
  raise TypeError("Expected argument 'public_access_prevention' to be a str")
73
76
  pulumi.set(__self__, "public_access_prevention", public_access_prevention)
@@ -180,9 +183,14 @@ class GetBucketResult:
180
183
 
181
184
  @property
182
185
  @pulumi.getter
183
- def project(self) -> str:
186
+ def project(self) -> Optional[str]:
184
187
  return pulumi.get(self, "project")
185
188
 
189
+ @property
190
+ @pulumi.getter(name="projectNumber")
191
+ def project_number(self) -> int:
192
+ return pulumi.get(self, "project_number")
193
+
186
194
  @property
187
195
  @pulumi.getter(name="publicAccessPrevention")
188
196
  def public_access_prevention(self) -> str:
@@ -265,6 +273,7 @@ class AwaitableGetBucketResult(GetBucketResult):
265
273
  loggings=self.loggings,
266
274
  name=self.name,
267
275
  project=self.project,
276
+ project_number=self.project_number,
268
277
  public_access_prevention=self.public_access_prevention,
269
278
  pulumi_labels=self.pulumi_labels,
270
279
  requester_pays=self.requester_pays,
@@ -280,6 +289,7 @@ class AwaitableGetBucketResult(GetBucketResult):
280
289
 
281
290
 
282
291
  def get_bucket(name: Optional[str] = None,
292
+ project: Optional[str] = None,
283
293
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetBucketResult:
284
294
  """
285
295
  Gets an existing bucket in Google Cloud Storage service (GCS).
@@ -300,9 +310,11 @@ def get_bucket(name: Optional[str] = None,
300
310
 
301
311
 
302
312
  :param str name: The name of the bucket.
313
+ :param str project: The ID of the project in which the resource belongs. If it is not provided, the provider project is used. If no value is supplied in the configuration or through provider defaults then the data source will use the Compute API to find the project id that corresponds to the project number returned from the Storage API. Supplying a value for `project` doesn't influence retrieving data about the bucket but it can be used to prevent use of the Compute API. If you do provide a `project` value ensure that it is the correct value for that bucket; the data source will not check that the project id and project number match.
303
314
  """
304
315
  __args__ = dict()
305
316
  __args__['name'] = name
317
+ __args__['project'] = project
306
318
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
307
319
  __ret__ = pulumi.runtime.invoke('gcp:storage/getBucket:getBucket', __args__, opts=opts, typ=GetBucketResult).value
308
320
 
@@ -322,6 +334,7 @@ def get_bucket(name: Optional[str] = None,
322
334
  loggings=pulumi.get(__ret__, 'loggings'),
323
335
  name=pulumi.get(__ret__, 'name'),
324
336
  project=pulumi.get(__ret__, 'project'),
337
+ project_number=pulumi.get(__ret__, 'project_number'),
325
338
  public_access_prevention=pulumi.get(__ret__, 'public_access_prevention'),
326
339
  pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'),
327
340
  requester_pays=pulumi.get(__ret__, 'requester_pays'),
@@ -338,6 +351,7 @@ def get_bucket(name: Optional[str] = None,
338
351
 
339
352
  @_utilities.lift_output_func(get_bucket)
340
353
  def get_bucket_output(name: Optional[pulumi.Input[str]] = None,
354
+ project: Optional[pulumi.Input[Optional[str]]] = None,
341
355
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetBucketResult]:
342
356
  """
343
357
  Gets an existing bucket in Google Cloud Storage service (GCS).
@@ -358,5 +372,6 @@ def get_bucket_output(name: Optional[pulumi.Input[str]] = None,
358
372
 
359
373
 
360
374
  :param str name: The name of the bucket.
375
+ :param str project: The ID of the project in which the resource belongs. If it is not provided, the provider project is used. If no value is supplied in the configuration or through provider defaults then the data source will use the Compute API to find the project id that corresponds to the project number returned from the Storage API. Supplying a value for `project` doesn't influence retrieving data about the bucket but it can be used to prevent use of the Compute API. If you do provide a `project` value ensure that it is the correct value for that bucket; the data source will not check that the project id and project number match.
361
376
  """
362
377
  ...
@@ -7,8 +7,10 @@ import typing
7
7
  # Export this package's modules as members:
8
8
  from .get_tag_key import *
9
9
  from .get_tag_key_iam_policy import *
10
+ from .get_tag_keys import *
10
11
  from .get_tag_value import *
11
12
  from .get_tag_value_iam_policy import *
13
+ from .get_tag_values import *
12
14
  from .location_tag_binding import *
13
15
  from .tag_binding import *
14
16
  from .tag_key import *
@@ -0,0 +1,101 @@
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 pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+
13
+ __all__ = [
14
+ 'GetTagKeysResult',
15
+ 'AwaitableGetTagKeysResult',
16
+ 'get_tag_keys',
17
+ 'get_tag_keys_output',
18
+ ]
19
+
20
+ @pulumi.output_type
21
+ class GetTagKeysResult:
22
+ """
23
+ A collection of values returned by getTagKeys.
24
+ """
25
+ def __init__(__self__, id=None, keys=None, parent=None):
26
+ if id and not isinstance(id, str):
27
+ raise TypeError("Expected argument 'id' to be a str")
28
+ pulumi.set(__self__, "id", id)
29
+ if keys and not isinstance(keys, list):
30
+ raise TypeError("Expected argument 'keys' to be a list")
31
+ pulumi.set(__self__, "keys", keys)
32
+ if parent and not isinstance(parent, str):
33
+ raise TypeError("Expected argument 'parent' to be a str")
34
+ pulumi.set(__self__, "parent", parent)
35
+
36
+ @property
37
+ @pulumi.getter
38
+ def id(self) -> str:
39
+ """
40
+ The provider-assigned unique ID for this managed resource.
41
+ """
42
+ return pulumi.get(self, "id")
43
+
44
+ @property
45
+ @pulumi.getter
46
+ def keys(self) -> Sequence['outputs.GetTagKeysKeyResult']:
47
+ return pulumi.get(self, "keys")
48
+
49
+ @property
50
+ @pulumi.getter
51
+ def parent(self) -> str:
52
+ """
53
+ The resource name of the TagKey's parent. A TagKey can be parented by an Orgination or a Project.
54
+ """
55
+ return pulumi.get(self, "parent")
56
+
57
+
58
+ class AwaitableGetTagKeysResult(GetTagKeysResult):
59
+ # pylint: disable=using-constant-test
60
+ def __await__(self):
61
+ if False:
62
+ yield self
63
+ return GetTagKeysResult(
64
+ id=self.id,
65
+ keys=self.keys,
66
+ parent=self.parent)
67
+
68
+
69
+ def get_tag_keys(parent: Optional[str] = None,
70
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTagKeysResult:
71
+ """
72
+ Get tag keys by org or project `parent`.
73
+
74
+ ## Example Usage
75
+
76
+
77
+ :param str parent: The resource name of the parent organization or project. It can be in format `organizations/{org_id}` or `projects/{project_id_or_number}`.
78
+ """
79
+ __args__ = dict()
80
+ __args__['parent'] = parent
81
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
82
+ __ret__ = pulumi.runtime.invoke('gcp:tags/getTagKeys:getTagKeys', __args__, opts=opts, typ=GetTagKeysResult).value
83
+
84
+ return AwaitableGetTagKeysResult(
85
+ id=pulumi.get(__ret__, 'id'),
86
+ keys=pulumi.get(__ret__, 'keys'),
87
+ parent=pulumi.get(__ret__, 'parent'))
88
+
89
+
90
+ @_utilities.lift_output_func(get_tag_keys)
91
+ def get_tag_keys_output(parent: Optional[pulumi.Input[str]] = None,
92
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetTagKeysResult]:
93
+ """
94
+ Get tag keys by org or project `parent`.
95
+
96
+ ## Example Usage
97
+
98
+
99
+ :param str parent: The resource name of the parent organization or project. It can be in format `organizations/{org_id}` or `projects/{project_id_or_number}`.
100
+ """
101
+ ...
@@ -0,0 +1,101 @@
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 pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+
13
+ __all__ = [
14
+ 'GetTagValuesResult',
15
+ 'AwaitableGetTagValuesResult',
16
+ 'get_tag_values',
17
+ 'get_tag_values_output',
18
+ ]
19
+
20
+ @pulumi.output_type
21
+ class GetTagValuesResult:
22
+ """
23
+ A collection of values returned by getTagValues.
24
+ """
25
+ def __init__(__self__, id=None, parent=None, values=None):
26
+ if id and not isinstance(id, str):
27
+ raise TypeError("Expected argument 'id' to be a str")
28
+ pulumi.set(__self__, "id", id)
29
+ if parent and not isinstance(parent, str):
30
+ raise TypeError("Expected argument 'parent' to be a str")
31
+ pulumi.set(__self__, "parent", parent)
32
+ if values and not isinstance(values, list):
33
+ raise TypeError("Expected argument 'values' to be a list")
34
+ pulumi.set(__self__, "values", values)
35
+
36
+ @property
37
+ @pulumi.getter
38
+ def id(self) -> str:
39
+ """
40
+ The provider-assigned unique ID for this managed resource.
41
+ """
42
+ return pulumi.get(self, "id")
43
+
44
+ @property
45
+ @pulumi.getter
46
+ def parent(self) -> str:
47
+ """
48
+ The resource name of the new TagValue's parent TagKey. Must be of the form tagKeys/{tag_key_id}.
49
+ """
50
+ return pulumi.get(self, "parent")
51
+
52
+ @property
53
+ @pulumi.getter
54
+ def values(self) -> Sequence['outputs.GetTagValuesValueResult']:
55
+ return pulumi.get(self, "values")
56
+
57
+
58
+ class AwaitableGetTagValuesResult(GetTagValuesResult):
59
+ # pylint: disable=using-constant-test
60
+ def __await__(self):
61
+ if False:
62
+ yield self
63
+ return GetTagValuesResult(
64
+ id=self.id,
65
+ parent=self.parent,
66
+ values=self.values)
67
+
68
+
69
+ def get_tag_values(parent: Optional[str] = None,
70
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTagValuesResult:
71
+ """
72
+ Get tag values from a `parent` key.
73
+
74
+ ## Example Usage
75
+
76
+
77
+ :param str parent: The resource name of the parent tagKey in format `tagKey/{name}`.
78
+ """
79
+ __args__ = dict()
80
+ __args__['parent'] = parent
81
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
82
+ __ret__ = pulumi.runtime.invoke('gcp:tags/getTagValues:getTagValues', __args__, opts=opts, typ=GetTagValuesResult).value
83
+
84
+ return AwaitableGetTagValuesResult(
85
+ id=pulumi.get(__ret__, 'id'),
86
+ parent=pulumi.get(__ret__, 'parent'),
87
+ values=pulumi.get(__ret__, 'values'))
88
+
89
+
90
+ @_utilities.lift_output_func(get_tag_values)
91
+ def get_tag_values_output(parent: Optional[pulumi.Input[str]] = None,
92
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetTagValuesResult]:
93
+ """
94
+ Get tag values from a `parent` key.
95
+
96
+ ## Example Usage
97
+
98
+
99
+ :param str parent: The resource name of the parent tagKey in format `tagKey/{name}`.
100
+ """
101
+ ...