pulumi-gcp 7.7.0a1706207981__py3-none-any.whl → 7.8.0__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (686) hide show
  1. pulumi_gcp/__init__.py +73 -0
  2. pulumi_gcp/_utilities.py +6 -2
  3. pulumi_gcp/accesscontextmanager/access_level.py +2 -18
  4. pulumi_gcp/accesscontextmanager/access_levels.py +2 -18
  5. pulumi_gcp/accesscontextmanager/access_policy.py +2 -18
  6. pulumi_gcp/accesscontextmanager/authorized_orgs_desc.py +2 -18
  7. pulumi_gcp/accesscontextmanager/egress_policy.py +2 -18
  8. pulumi_gcp/accesscontextmanager/gcp_user_access_binding.py +2 -18
  9. pulumi_gcp/accesscontextmanager/ingress_policy.py +2 -18
  10. pulumi_gcp/accesscontextmanager/service_perimeter.py +2 -18
  11. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +2 -18
  12. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +2 -18
  13. pulumi_gcp/accesscontextmanager/service_perimeter_resource.py +2 -18
  14. pulumi_gcp/accesscontextmanager/service_perimeters.py +2 -18
  15. pulumi_gcp/activedirectory/domain.py +2 -18
  16. pulumi_gcp/activedirectory/domain_trust.py +2 -18
  17. pulumi_gcp/alloydb/backup.py +2 -18
  18. pulumi_gcp/alloydb/cluster.py +26 -18
  19. pulumi_gcp/alloydb/instance.py +3 -19
  20. pulumi_gcp/alloydb/outputs.py +16 -0
  21. pulumi_gcp/alloydb/user.py +2 -18
  22. pulumi_gcp/apigateway/api.py +2 -18
  23. pulumi_gcp/apigateway/api_config.py +2 -18
  24. pulumi_gcp/apigateway/gateway.py +23 -53
  25. pulumi_gcp/apigee/addons_config.py +2 -18
  26. pulumi_gcp/apigee/endpoint_attachment.py +2 -18
  27. pulumi_gcp/apigee/env_group.py +2 -18
  28. pulumi_gcp/apigee/env_group_attachment.py +2 -18
  29. pulumi_gcp/apigee/env_keystore.py +2 -18
  30. pulumi_gcp/apigee/env_references.py +2 -18
  31. pulumi_gcp/apigee/environment.py +2 -18
  32. pulumi_gcp/apigee/flowhook.py +2 -18
  33. pulumi_gcp/apigee/instance.py +2 -18
  34. pulumi_gcp/apigee/instance_attachment.py +2 -18
  35. pulumi_gcp/apigee/keystores_aliases_key_cert_file.py +2 -18
  36. pulumi_gcp/apigee/keystores_aliases_pkcs12.py +2 -18
  37. pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +2 -18
  38. pulumi_gcp/apigee/nat_address.py +2 -18
  39. pulumi_gcp/apigee/organization.py +2 -18
  40. pulumi_gcp/apigee/sharedflow.py +2 -18
  41. pulumi_gcp/apigee/sharedflow_deployment.py +2 -18
  42. pulumi_gcp/apigee/sync_authorization.py +2 -18
  43. pulumi_gcp/apigee/target_server.py +2 -18
  44. pulumi_gcp/appengine/application.py +2 -18
  45. pulumi_gcp/appengine/application_url_dispatch_rules.py +2 -18
  46. pulumi_gcp/appengine/domain_mapping.py +2 -18
  47. pulumi_gcp/appengine/engine_split_traffic.py +2 -18
  48. pulumi_gcp/appengine/firewall_rule.py +2 -18
  49. pulumi_gcp/appengine/flexible_app_version.py +2 -18
  50. pulumi_gcp/appengine/service_network_settings.py +2 -18
  51. pulumi_gcp/appengine/standard_app_version.py +2 -18
  52. pulumi_gcp/artifactregistry/_inputs.py +60 -0
  53. pulumi_gcp/artifactregistry/outputs.py +264 -0
  54. pulumi_gcp/artifactregistry/repository.py +77 -74
  55. pulumi_gcp/artifactregistry/vpcsc_config.py +2 -18
  56. pulumi_gcp/assuredworkloads/_inputs.py +34 -0
  57. pulumi_gcp/assuredworkloads/outputs.py +34 -0
  58. pulumi_gcp/assuredworkloads/workload.py +2 -18
  59. pulumi_gcp/backupdisasterrecovery/management_server.py +2 -18
  60. pulumi_gcp/backupdisasterrecovery/outputs.py +20 -0
  61. pulumi_gcp/beyondcorp/app_connection.py +2 -18
  62. pulumi_gcp/beyondcorp/app_connector.py +2 -18
  63. pulumi_gcp/beyondcorp/app_gateway.py +2 -18
  64. pulumi_gcp/beyondcorp/outputs.py +54 -0
  65. pulumi_gcp/biglake/catalog.py +2 -18
  66. pulumi_gcp/biglake/database.py +2 -18
  67. pulumi_gcp/biglake/table.py +2 -18
  68. pulumi_gcp/bigquery/_inputs.py +18 -0
  69. pulumi_gcp/bigquery/app_profile.py +2 -18
  70. pulumi_gcp/bigquery/bi_reservation.py +2 -18
  71. pulumi_gcp/bigquery/capacity_commitment.py +2 -18
  72. pulumi_gcp/bigquery/connection.py +2 -18
  73. pulumi_gcp/bigquery/data_transfer_config.py +2 -18
  74. pulumi_gcp/bigquery/dataset.py +9 -18
  75. pulumi_gcp/bigquery/dataset_iam_binding.py +4 -12
  76. pulumi_gcp/bigquery/dataset_iam_member.py +4 -12
  77. pulumi_gcp/bigquery/dataset_iam_policy.py +4 -12
  78. pulumi_gcp/bigquery/job.py +2 -18
  79. pulumi_gcp/bigquery/outputs.py +172 -0
  80. pulumi_gcp/bigquery/reservation.py +2 -18
  81. pulumi_gcp/bigquery/reservation_assignment.py +2 -18
  82. pulumi_gcp/bigquery/routine.py +2 -18
  83. pulumi_gcp/bigquery/table.py +2 -18
  84. pulumi_gcp/bigqueryanalyticshub/data_exchange.py +2 -18
  85. pulumi_gcp/bigqueryanalyticshub/listing.py +2 -18
  86. pulumi_gcp/bigquerydatapolicy/data_policy.py +2 -18
  87. pulumi_gcp/bigtable/_inputs.py +4 -0
  88. pulumi_gcp/bigtable/instance.py +2 -18
  89. pulumi_gcp/bigtable/instance_iam_binding.py +4 -12
  90. pulumi_gcp/bigtable/instance_iam_member.py +4 -12
  91. pulumi_gcp/bigtable/instance_iam_policy.py +4 -12
  92. pulumi_gcp/bigtable/outputs.py +4 -0
  93. pulumi_gcp/bigtable/table.py +2 -18
  94. pulumi_gcp/bigtable/table_iam_binding.py +4 -12
  95. pulumi_gcp/bigtable/table_iam_member.py +4 -12
  96. pulumi_gcp/bigtable/table_iam_policy.py +4 -12
  97. pulumi_gcp/billing/account_iam_binding.py +4 -12
  98. pulumi_gcp/billing/account_iam_member.py +4 -12
  99. pulumi_gcp/billing/account_iam_policy.py +4 -12
  100. pulumi_gcp/billing/budget.py +2 -18
  101. pulumi_gcp/billing/project_info.py +2 -18
  102. pulumi_gcp/billing/sub_account.py +2 -18
  103. pulumi_gcp/binaryauthorization/attestor.py +2 -18
  104. pulumi_gcp/binaryauthorization/policy.py +2 -18
  105. pulumi_gcp/blockchainnodeengine/__init__.py +10 -0
  106. pulumi_gcp/blockchainnodeengine/_inputs.py +388 -0
  107. pulumi_gcp/blockchainnodeengine/blockchain_nodes.py +791 -0
  108. pulumi_gcp/blockchainnodeengine/outputs.py +441 -0
  109. pulumi_gcp/certificateauthority/authority.py +2 -18
  110. pulumi_gcp/certificateauthority/ca_pool.py +2 -18
  111. pulumi_gcp/certificateauthority/certificate.py +2 -18
  112. pulumi_gcp/certificateauthority/certificate_template.py +2 -18
  113. pulumi_gcp/certificateauthority/outputs.py +378 -0
  114. pulumi_gcp/certificatemanager/certificate.py +2 -18
  115. pulumi_gcp/certificatemanager/certificate_issuance_config.py +2 -18
  116. pulumi_gcp/certificatemanager/certificate_map.py +2 -18
  117. pulumi_gcp/certificatemanager/certificate_map_entry.py +2 -18
  118. pulumi_gcp/certificatemanager/dns_authorization.py +2 -18
  119. pulumi_gcp/certificatemanager/outputs.py +32 -0
  120. pulumi_gcp/certificatemanager/trust_config.py +2 -18
  121. pulumi_gcp/cloudasset/folder_feed.py +2 -18
  122. pulumi_gcp/cloudasset/organization_feed.py +2 -18
  123. pulumi_gcp/cloudasset/project_feed.py +2 -18
  124. pulumi_gcp/cloudbuild/bitbucket_server_config.py +2 -18
  125. pulumi_gcp/cloudbuild/outputs.py +1009 -3
  126. pulumi_gcp/cloudbuild/trigger.py +2 -18
  127. pulumi_gcp/cloudbuild/worker_pool.py +2 -18
  128. pulumi_gcp/cloudbuildv2/_inputs.py +14 -0
  129. pulumi_gcp/cloudbuildv2/connection.py +2 -18
  130. pulumi_gcp/cloudbuildv2/outputs.py +14 -0
  131. pulumi_gcp/cloudbuildv2/repository.py +2 -18
  132. pulumi_gcp/clouddeploy/_inputs.py +36 -0
  133. pulumi_gcp/clouddeploy/automation.py +2 -18
  134. pulumi_gcp/clouddeploy/delivery_pipeline.py +2 -18
  135. pulumi_gcp/clouddeploy/outputs.py +36 -0
  136. pulumi_gcp/clouddeploy/target.py +2 -18
  137. pulumi_gcp/clouddomains/registration.py +2 -18
  138. pulumi_gcp/cloudfunctions/_inputs.py +4 -0
  139. pulumi_gcp/cloudfunctions/function.py +2 -18
  140. pulumi_gcp/cloudfunctions/outputs.py +54 -0
  141. pulumi_gcp/cloudfunctionsv2/function.py +2 -18
  142. pulumi_gcp/cloudfunctionsv2/outputs.py +302 -0
  143. pulumi_gcp/cloudidentity/group.py +2 -18
  144. pulumi_gcp/cloudidentity/group_membership.py +2 -18
  145. pulumi_gcp/cloudidentity/outputs.py +54 -0
  146. pulumi_gcp/cloudids/endpoint.py +2 -18
  147. pulumi_gcp/cloudrun/_inputs.py +93 -4
  148. pulumi_gcp/cloudrun/domain_mapping.py +2 -18
  149. pulumi_gcp/cloudrun/outputs.py +867 -9
  150. pulumi_gcp/cloudrun/service.py +2 -18
  151. pulumi_gcp/cloudrunv2/_inputs.py +12 -0
  152. pulumi_gcp/cloudrunv2/job.py +2 -18
  153. pulumi_gcp/cloudrunv2/outputs.py +937 -1
  154. pulumi_gcp/cloudrunv2/service.py +2 -18
  155. pulumi_gcp/cloudscheduler/job.py +2 -18
  156. pulumi_gcp/cloudtasks/queue.py +2 -18
  157. pulumi_gcp/composer/_inputs.py +493 -0
  158. pulumi_gcp/composer/environment.py +2 -18
  159. pulumi_gcp/composer/outputs.py +996 -0
  160. pulumi_gcp/compute/__init__.py +2 -0
  161. pulumi_gcp/compute/_inputs.py +1010 -46
  162. pulumi_gcp/compute/address.py +2 -18
  163. pulumi_gcp/compute/attached_disk.py +2 -18
  164. pulumi_gcp/compute/autoscaler.py +2 -18
  165. pulumi_gcp/compute/backend_bucket.py +2 -18
  166. pulumi_gcp/compute/backend_service.py +30 -18
  167. pulumi_gcp/compute/disk.py +34 -29
  168. pulumi_gcp/compute/disk_resource_policy_attachment.py +2 -18
  169. pulumi_gcp/compute/external_vpn_gateway.py +2 -18
  170. pulumi_gcp/compute/firewall.py +2 -18
  171. pulumi_gcp/compute/firewall_policy_association.py +2 -18
  172. pulumi_gcp/compute/firewall_policy_rule.py +2 -18
  173. pulumi_gcp/compute/forwarding_rule.py +2 -18
  174. pulumi_gcp/compute/get_disk.py +11 -1
  175. pulumi_gcp/compute/get_instance_group_manager.py +11 -1
  176. pulumi_gcp/compute/get_instance_template.py +3 -0
  177. pulumi_gcp/compute/get_machine_types.py +143 -0
  178. pulumi_gcp/compute/global_address.py +9 -25
  179. pulumi_gcp/compute/global_forwarding_rule.py +2 -18
  180. pulumi_gcp/compute/global_network_endpoint.py +2 -18
  181. pulumi_gcp/compute/global_network_endpoint_group.py +2 -18
  182. pulumi_gcp/compute/ha_vpn_gateway.py +2 -18
  183. pulumi_gcp/compute/health_check.py +2 -18
  184. pulumi_gcp/compute/http_health_check.py +2 -18
  185. pulumi_gcp/compute/https_health_check.py +2 -18
  186. pulumi_gcp/compute/image.py +2 -18
  187. pulumi_gcp/compute/instance.py +13 -22
  188. pulumi_gcp/compute/instance_group.py +2 -18
  189. pulumi_gcp/compute/instance_group_manager.py +34 -29
  190. pulumi_gcp/compute/instance_group_named_port.py +2 -18
  191. pulumi_gcp/compute/instance_settings.py +2 -18
  192. pulumi_gcp/compute/instance_template.py +9 -25
  193. pulumi_gcp/compute/interconnect_attachment.py +77 -18
  194. pulumi_gcp/compute/machine_image.py +2 -18
  195. pulumi_gcp/compute/managed_ssl_certificate.py +2 -18
  196. pulumi_gcp/compute/manged_ssl_certificate.py +2 -18
  197. pulumi_gcp/compute/network.py +2 -18
  198. pulumi_gcp/compute/network_attachment.py +2 -18
  199. pulumi_gcp/compute/network_edge_security_service.py +2 -18
  200. pulumi_gcp/compute/network_endpoint.py +2 -18
  201. pulumi_gcp/compute/network_endpoint_group.py +2 -18
  202. pulumi_gcp/compute/network_endpoint_list.py +2 -18
  203. pulumi_gcp/compute/network_firewall_policy.py +2 -18
  204. pulumi_gcp/compute/network_firewall_policy_association.py +2 -18
  205. pulumi_gcp/compute/network_firewall_policy_rule.py +2 -18
  206. pulumi_gcp/compute/network_peering.py +2 -18
  207. pulumi_gcp/compute/network_peering_routes_config.py +2 -18
  208. pulumi_gcp/compute/node_group.py +30 -53
  209. pulumi_gcp/compute/node_template.py +2 -18
  210. pulumi_gcp/compute/organization_security_policy.py +2 -18
  211. pulumi_gcp/compute/organization_security_policy_association.py +2 -18
  212. pulumi_gcp/compute/organization_security_policy_rule.py +2 -18
  213. pulumi_gcp/compute/outputs.py +4530 -181
  214. pulumi_gcp/compute/packet_mirroring.py +2 -18
  215. pulumi_gcp/compute/per_instance_config.py +2 -18
  216. pulumi_gcp/compute/project_default_network_tier.py +2 -18
  217. pulumi_gcp/compute/project_metadata.py +2 -18
  218. pulumi_gcp/compute/project_metadata_item.py +2 -18
  219. pulumi_gcp/compute/public_advertised_prefix.py +2 -18
  220. pulumi_gcp/compute/public_delegated_prefix.py +2 -18
  221. pulumi_gcp/compute/region_autoscaler.py +2 -18
  222. pulumi_gcp/compute/region_backend_service.py +46 -32
  223. pulumi_gcp/compute/region_commitment.py +2 -18
  224. pulumi_gcp/compute/region_disk.py +6 -29
  225. pulumi_gcp/compute/region_disk_resource_policy_attachment.py +2 -18
  226. pulumi_gcp/compute/region_health_check.py +2 -18
  227. pulumi_gcp/compute/region_instance_group_manager.py +34 -29
  228. pulumi_gcp/compute/region_instance_template.py +2 -18
  229. pulumi_gcp/compute/region_network_endpoint.py +556 -0
  230. pulumi_gcp/compute/region_network_endpoint_group.py +140 -92
  231. pulumi_gcp/compute/region_network_firewall_policy.py +2 -18
  232. pulumi_gcp/compute/region_network_firewall_policy_association.py +2 -18
  233. pulumi_gcp/compute/region_network_firewall_policy_rule.py +2 -18
  234. pulumi_gcp/compute/region_per_instance_config.py +2 -18
  235. pulumi_gcp/compute/region_security_policy.py +2 -18
  236. pulumi_gcp/compute/region_security_policy_rule.py +2 -18
  237. pulumi_gcp/compute/region_ssl_certificate.py +2 -18
  238. pulumi_gcp/compute/region_ssl_policy.py +2 -18
  239. pulumi_gcp/compute/region_target_http_proxy.py +2 -18
  240. pulumi_gcp/compute/region_target_https_proxy.py +2 -18
  241. pulumi_gcp/compute/region_target_tcp_proxy.py +2 -18
  242. pulumi_gcp/compute/region_url_map.py +2 -18
  243. pulumi_gcp/compute/reservation.py +2 -18
  244. pulumi_gcp/compute/resource_policy.py +2 -18
  245. pulumi_gcp/compute/route.py +2 -18
  246. pulumi_gcp/compute/router.py +2 -18
  247. pulumi_gcp/compute/router_interface.py +2 -18
  248. pulumi_gcp/compute/router_nat.py +44 -39
  249. pulumi_gcp/compute/router_peer.py +2 -18
  250. pulumi_gcp/compute/security_policy.py +2 -18
  251. pulumi_gcp/compute/security_scan_config.py +2 -18
  252. pulumi_gcp/compute/service_attachment.py +2 -18
  253. pulumi_gcp/compute/shared_vpc_host_project.py +2 -18
  254. pulumi_gcp/compute/shared_vpc_service_project.py +2 -18
  255. pulumi_gcp/compute/snapshot.py +2 -18
  256. pulumi_gcp/compute/ssl_certificate.py +2 -18
  257. pulumi_gcp/compute/ssl_policy.py +2 -18
  258. pulumi_gcp/compute/subnetwork.py +79 -102
  259. pulumi_gcp/compute/target_grpc_proxy.py +2 -18
  260. pulumi_gcp/compute/target_http_proxy.py +2 -18
  261. pulumi_gcp/compute/target_https_proxy.py +2 -18
  262. pulumi_gcp/compute/target_instance.py +2 -18
  263. pulumi_gcp/compute/target_pool.py +9 -25
  264. pulumi_gcp/compute/target_ssl_proxy.py +2 -18
  265. pulumi_gcp/compute/target_tcp_proxy.py +2 -18
  266. pulumi_gcp/compute/url_map.py +2 -18
  267. pulumi_gcp/compute/vpn_gateway.py +2 -18
  268. pulumi_gcp/compute/vpn_tunnel.py +2 -18
  269. pulumi_gcp/config/__init__.pyi +6 -0
  270. pulumi_gcp/config/vars.py +12 -0
  271. pulumi_gcp/container/_inputs.py +568 -30
  272. pulumi_gcp/container/attached_cluster.py +2 -18
  273. pulumi_gcp/container/aws_cluster.py +9 -25
  274. pulumi_gcp/container/aws_node_pool.py +2 -18
  275. pulumi_gcp/container/azure_client.py +2 -18
  276. pulumi_gcp/container/azure_cluster.py +9 -25
  277. pulumi_gcp/container/azure_node_pool.py +2 -18
  278. pulumi_gcp/container/cluster.py +25 -69
  279. pulumi_gcp/container/node_pool.py +2 -18
  280. pulumi_gcp/container/outputs.py +2161 -31
  281. pulumi_gcp/containeranalysis/note.py +2 -18
  282. pulumi_gcp/containeranalysis/occurence.py +2 -18
  283. pulumi_gcp/databasemigrationservice/connection_profile.py +2 -18
  284. pulumi_gcp/databasemigrationservice/private_connection.py +2 -18
  285. pulumi_gcp/datacatalog/entry.py +2 -18
  286. pulumi_gcp/datacatalog/entry_group.py +2 -18
  287. pulumi_gcp/datacatalog/policy_tag.py +2 -18
  288. pulumi_gcp/datacatalog/tag.py +2 -18
  289. pulumi_gcp/datacatalog/tag_template.py +2 -18
  290. pulumi_gcp/datacatalog/taxonomy.py +2 -18
  291. pulumi_gcp/dataflow/job.py +2 -18
  292. pulumi_gcp/dataflow/pipeline.py +2 -18
  293. pulumi_gcp/dataform/repository.py +2 -18
  294. pulumi_gcp/dataform/repository_release_config.py +2 -18
  295. pulumi_gcp/dataform/repository_workflow_config.py +2 -18
  296. pulumi_gcp/datafusion/instance.py +30 -46
  297. pulumi_gcp/dataloss/prevention_deidentify_template.py +2 -18
  298. pulumi_gcp/dataloss/prevention_inspect_template.py +2 -18
  299. pulumi_gcp/dataloss/prevention_job_trigger.py +2 -18
  300. pulumi_gcp/dataloss/prevention_stored_info_type.py +2 -18
  301. pulumi_gcp/dataplex/_inputs.py +66 -0
  302. pulumi_gcp/dataplex/asset.py +2 -18
  303. pulumi_gcp/dataplex/datascan.py +2 -18
  304. pulumi_gcp/dataplex/lake.py +2 -18
  305. pulumi_gcp/dataplex/outputs.py +66 -0
  306. pulumi_gcp/dataplex/task.py +2 -18
  307. pulumi_gcp/dataplex/zone.py +2 -18
  308. pulumi_gcp/dataproc/_inputs.py +178 -0
  309. pulumi_gcp/dataproc/autoscaling_policy.py +2 -18
  310. pulumi_gcp/dataproc/cluster_iam_binding.py +4 -12
  311. pulumi_gcp/dataproc/cluster_iam_member.py +4 -12
  312. pulumi_gcp/dataproc/cluster_iam_policy.py +4 -12
  313. pulumi_gcp/dataproc/job_iam_binding.py +4 -12
  314. pulumi_gcp/dataproc/job_iam_member.py +4 -12
  315. pulumi_gcp/dataproc/job_iam_policy.py +4 -12
  316. pulumi_gcp/dataproc/metastore_federation.py +2 -18
  317. pulumi_gcp/dataproc/metastore_service.py +2 -18
  318. pulumi_gcp/dataproc/outputs.py +178 -0
  319. pulumi_gcp/dataproc/workflow_template.py +9 -25
  320. pulumi_gcp/datastore/data_store_index.py +2 -18
  321. pulumi_gcp/datastream/connection_profile.py +2 -18
  322. pulumi_gcp/datastream/private_connection.py +2 -18
  323. pulumi_gcp/datastream/stream.py +2 -18
  324. pulumi_gcp/deploymentmanager/deployment.py +2 -18
  325. pulumi_gcp/diagflow/agent.py +2 -18
  326. pulumi_gcp/diagflow/cx_agent.py +2 -18
  327. pulumi_gcp/diagflow/cx_entity_type.py +2 -18
  328. pulumi_gcp/diagflow/cx_environment.py +2 -18
  329. pulumi_gcp/diagflow/cx_flow.py +2 -18
  330. pulumi_gcp/diagflow/cx_intent.py +2 -18
  331. pulumi_gcp/diagflow/cx_page.py +2 -18
  332. pulumi_gcp/diagflow/cx_security_settings.py +2 -18
  333. pulumi_gcp/diagflow/cx_test_case.py +2 -18
  334. pulumi_gcp/diagflow/cx_version.py +2 -18
  335. pulumi_gcp/diagflow/cx_webhook.py +2 -18
  336. pulumi_gcp/diagflow/entity_type.py +2 -18
  337. pulumi_gcp/diagflow/fulfillment.py +2 -18
  338. pulumi_gcp/diagflow/intent.py +2 -18
  339. pulumi_gcp/discoveryengine/__init__.py +12 -0
  340. pulumi_gcp/discoveryengine/_inputs.py +237 -0
  341. pulumi_gcp/discoveryengine/chat_engine.py +822 -0
  342. pulumi_gcp/discoveryengine/data_store.py +734 -0
  343. pulumi_gcp/discoveryengine/outputs.py +304 -0
  344. pulumi_gcp/discoveryengine/search_engine.py +752 -0
  345. pulumi_gcp/dns/_inputs.py +34 -0
  346. pulumi_gcp/dns/managed_zone.py +2 -18
  347. pulumi_gcp/dns/outputs.py +34 -0
  348. pulumi_gcp/dns/policy.py +2 -18
  349. pulumi_gcp/dns/record_set.py +2 -18
  350. pulumi_gcp/dns/response_policy.py +2 -18
  351. pulumi_gcp/dns/response_policy_rule.py +9 -32
  352. pulumi_gcp/edgecontainer/cluster.py +2 -18
  353. pulumi_gcp/edgecontainer/node_pool.py +2 -18
  354. pulumi_gcp/edgecontainer/vpn_connection.py +2 -18
  355. pulumi_gcp/edgenetwork/network.py +2 -18
  356. pulumi_gcp/edgenetwork/subnet.py +2 -18
  357. pulumi_gcp/essentialcontacts/contact.py +2 -18
  358. pulumi_gcp/essentialcontacts/document_ai_processor.py +2 -18
  359. pulumi_gcp/essentialcontacts/document_ai_processor_default_version.py +2 -18
  360. pulumi_gcp/essentialcontacts/document_ai_warehouse_document_schema.py +2 -18
  361. pulumi_gcp/eventarc/_inputs.py +2 -2
  362. pulumi_gcp/eventarc/channel.py +2 -18
  363. pulumi_gcp/eventarc/google_channel_config.py +2 -18
  364. pulumi_gcp/eventarc/outputs.py +2 -2
  365. pulumi_gcp/eventarc/trigger.py +2 -18
  366. pulumi_gcp/filestore/_inputs.py +1 -3
  367. pulumi_gcp/filestore/backup.py +2 -18
  368. pulumi_gcp/filestore/instance.py +2 -18
  369. pulumi_gcp/filestore/outputs.py +89 -3
  370. pulumi_gcp/filestore/snapshot.py +2 -18
  371. pulumi_gcp/firebase/_inputs.py +4 -2
  372. pulumi_gcp/firebase/android_app.py +2 -18
  373. pulumi_gcp/firebase/apple_app.py +2 -18
  374. pulumi_gcp/firebase/database_instance.py +2 -18
  375. pulumi_gcp/firebase/extensions_instance.py +8 -26
  376. pulumi_gcp/firebase/hosting_channel.py +2 -18
  377. pulumi_gcp/firebase/hosting_custom_domain.py +2 -18
  378. pulumi_gcp/firebase/hosting_release.py +2 -18
  379. pulumi_gcp/firebase/hosting_site.py +2 -18
  380. pulumi_gcp/firebase/hosting_version.py +2 -18
  381. pulumi_gcp/firebase/outputs.py +4 -2
  382. pulumi_gcp/firebase/project.py +2 -18
  383. pulumi_gcp/firebase/storage_bucket.py +2 -18
  384. pulumi_gcp/firebase/web_app.py +2 -18
  385. pulumi_gcp/firebaserules/_inputs.py +6 -0
  386. pulumi_gcp/firebaserules/outputs.py +6 -0
  387. pulumi_gcp/firebaserules/release.py +4 -16
  388. pulumi_gcp/firebaserules/ruleset.py +2 -18
  389. pulumi_gcp/firestore/backup_schedule.py +38 -30
  390. pulumi_gcp/firestore/database.py +2 -26
  391. pulumi_gcp/firestore/document.py +2 -86
  392. pulumi_gcp/firestore/field.py +24 -120
  393. pulumi_gcp/firestore/index.py +6 -60
  394. pulumi_gcp/folder/_inputs.py +4 -0
  395. pulumi_gcp/folder/access_approval_settings.py +2 -18
  396. pulumi_gcp/folder/iam_audit_config.py +6 -14
  397. pulumi_gcp/folder/iam_member.py +6 -14
  398. pulumi_gcp/folder/iam_policy.py +6 -14
  399. pulumi_gcp/folder/organization_policy.py +2 -18
  400. pulumi_gcp/folder/outputs.py +54 -0
  401. pulumi_gcp/gkebackup/backup_plan.py +2 -18
  402. pulumi_gcp/gkebackup/restore_plan.py +2 -18
  403. pulumi_gcp/gkebackup/restore_plan_iam_binding.py +2 -18
  404. pulumi_gcp/gkebackup/restore_plan_iam_member.py +2 -18
  405. pulumi_gcp/gkebackup/restore_plan_iam_policy.py +2 -18
  406. pulumi_gcp/gkehub/_inputs.py +8 -0
  407. pulumi_gcp/gkehub/feature.py +4 -20
  408. pulumi_gcp/gkehub/feature_membership.py +2 -18
  409. pulumi_gcp/gkehub/fleet.py +2 -18
  410. pulumi_gcp/gkehub/membership.py +6 -29
  411. pulumi_gcp/gkehub/membership_binding.py +2 -18
  412. pulumi_gcp/gkehub/membership_rbac_role_binding.py +2 -18
  413. pulumi_gcp/gkehub/namespace.py +2 -18
  414. pulumi_gcp/gkehub/outputs.py +8 -0
  415. pulumi_gcp/gkehub/scope.py +2 -18
  416. pulumi_gcp/gkehub/scope_rbac_role_binding.py +2 -18
  417. pulumi_gcp/gkeonprem/bare_metal_admin_cluster.py +2 -18
  418. pulumi_gcp/gkeonprem/bare_metal_cluster.py +2 -18
  419. pulumi_gcp/gkeonprem/bare_metal_node_pool.py +2 -18
  420. pulumi_gcp/gkeonprem/v_mware_cluster.py +2 -18
  421. pulumi_gcp/gkeonprem/v_mware_node_pool.py +2 -18
  422. pulumi_gcp/healthcare/consent_store.py +2 -18
  423. pulumi_gcp/healthcare/dataset.py +2 -18
  424. pulumi_gcp/healthcare/dataset_iam_binding.py +4 -12
  425. pulumi_gcp/healthcare/dataset_iam_member.py +4 -12
  426. pulumi_gcp/healthcare/dataset_iam_policy.py +4 -12
  427. pulumi_gcp/healthcare/dicom_store.py +2 -18
  428. pulumi_gcp/healthcare/dicom_store_iam_binding.py +4 -12
  429. pulumi_gcp/healthcare/dicom_store_iam_member.py +4 -12
  430. pulumi_gcp/healthcare/dicom_store_iam_policy.py +4 -12
  431. pulumi_gcp/healthcare/fhir_store.py +23 -32
  432. pulumi_gcp/healthcare/fhir_store_iam_binding.py +4 -12
  433. pulumi_gcp/healthcare/fhir_store_iam_member.py +4 -12
  434. pulumi_gcp/healthcare/fhir_store_iam_policy.py +4 -12
  435. pulumi_gcp/healthcare/hl7_store.py +2 -18
  436. pulumi_gcp/healthcare/hl7_store_iam_binding.py +4 -12
  437. pulumi_gcp/healthcare/hl7_store_iam_member.py +4 -12
  438. pulumi_gcp/healthcare/hl7_store_iam_policy.py +4 -12
  439. pulumi_gcp/iam/access_boundary_policy.py +2 -18
  440. pulumi_gcp/iam/deny_policy.py +2 -18
  441. pulumi_gcp/iam/outputs.py +92 -0
  442. pulumi_gcp/iam/workforce_pool.py +2 -18
  443. pulumi_gcp/iam/workforce_pool_provider.py +2 -18
  444. pulumi_gcp/iam/workload_identity_pool.py +2 -18
  445. pulumi_gcp/iam/workload_identity_pool_provider.py +2 -18
  446. pulumi_gcp/iap/brand.py +2 -18
  447. pulumi_gcp/iap/client.py +2 -18
  448. pulumi_gcp/identityplatform/config.py +2 -18
  449. pulumi_gcp/identityplatform/default_supported_idp_config.py +2 -18
  450. pulumi_gcp/identityplatform/inbound_saml_config.py +2 -18
  451. pulumi_gcp/identityplatform/oauth_idp_config.py +2 -18
  452. pulumi_gcp/identityplatform/project_default_config.py +2 -18
  453. pulumi_gcp/identityplatform/tenant.py +2 -18
  454. pulumi_gcp/identityplatform/tenant_default_supported_idp_config.py +2 -18
  455. pulumi_gcp/identityplatform/tenant_inbound_saml_config.py +2 -18
  456. pulumi_gcp/identityplatform/tenant_oauth_idp_config.py +2 -18
  457. pulumi_gcp/integrationconnectors/connection.py +2 -18
  458. pulumi_gcp/integrationconnectors/endpoint_attachment.py +2 -18
  459. pulumi_gcp/kms/crypto_key.py +36 -18
  460. pulumi_gcp/kms/crypto_key_iam_binding.py +11 -19
  461. pulumi_gcp/kms/crypto_key_iam_member.py +11 -19
  462. pulumi_gcp/kms/crypto_key_iam_policy.py +4 -12
  463. pulumi_gcp/kms/crypto_key_version.py +2 -18
  464. pulumi_gcp/kms/key_ring.py +2 -18
  465. pulumi_gcp/kms/key_ring_iam_binding.py +11 -19
  466. pulumi_gcp/kms/key_ring_iam_member.py +11 -19
  467. pulumi_gcp/kms/key_ring_iam_policy.py +4 -12
  468. pulumi_gcp/kms/key_ring_import_job.py +2 -18
  469. pulumi_gcp/kms/outputs.py +16 -0
  470. pulumi_gcp/logging/_inputs.py +108 -0
  471. pulumi_gcp/logging/billing_account_bucket_config.py +2 -18
  472. pulumi_gcp/logging/billing_account_exclusion.py +2 -18
  473. pulumi_gcp/logging/billing_account_sink.py +2 -18
  474. pulumi_gcp/logging/folder_bucket_config.py +2 -18
  475. pulumi_gcp/logging/folder_exclusion.py +2 -18
  476. pulumi_gcp/logging/folder_settings.py +2 -18
  477. pulumi_gcp/logging/folder_sink.py +2 -18
  478. pulumi_gcp/logging/linked_dataset.py +2 -18
  479. pulumi_gcp/logging/log_view.py +2 -18
  480. pulumi_gcp/logging/metric.py +2 -18
  481. pulumi_gcp/logging/organization_bucket_config.py +2 -18
  482. pulumi_gcp/logging/organization_exclusion.py +2 -18
  483. pulumi_gcp/logging/organization_settings.py +2 -18
  484. pulumi_gcp/logging/organization_sink.py +2 -18
  485. pulumi_gcp/logging/outputs.py +108 -0
  486. pulumi_gcp/logging/project_bucket_config.py +2 -18
  487. pulumi_gcp/logging/project_exclusion.py +2 -18
  488. pulumi_gcp/logging/project_sink.py +2 -18
  489. pulumi_gcp/looker/instance.py +2 -18
  490. pulumi_gcp/memcache/instance.py +63 -18
  491. pulumi_gcp/migrationcenter/group.py +2 -18
  492. pulumi_gcp/ml/engine_model.py +2 -18
  493. pulumi_gcp/monitoring/alert_policy.py +2 -18
  494. pulumi_gcp/monitoring/custom_service.py +2 -18
  495. pulumi_gcp/monitoring/dashboard.py +2 -18
  496. pulumi_gcp/monitoring/generic_service.py +2 -18
  497. pulumi_gcp/monitoring/group.py +2 -18
  498. pulumi_gcp/monitoring/metric_descriptor.py +2 -18
  499. pulumi_gcp/monitoring/monitored_project.py +2 -18
  500. pulumi_gcp/monitoring/notification_channel.py +2 -18
  501. pulumi_gcp/monitoring/outputs.py +14 -0
  502. pulumi_gcp/monitoring/slo.py +2 -18
  503. pulumi_gcp/monitoring/uptime_check_config.py +2 -18
  504. pulumi_gcp/netapp/__init__.py +1 -0
  505. pulumi_gcp/netapp/active_directory.py +2 -18
  506. pulumi_gcp/netapp/backup_policy.py +2 -18
  507. pulumi_gcp/netapp/backup_vault.py +2 -18
  508. pulumi_gcp/netapp/kmsconfig.py +2 -18
  509. pulumi_gcp/netapp/storage_pool.py +36 -24
  510. pulumi_gcp/netapp/volume.py +67 -20
  511. pulumi_gcp/netapp/volume_snapshot.py +625 -0
  512. pulumi_gcp/networkconnectivity/_inputs.py +6 -0
  513. pulumi_gcp/networkconnectivity/hub.py +2 -18
  514. pulumi_gcp/networkconnectivity/outputs.py +6 -0
  515. pulumi_gcp/networkconnectivity/policy_based_route.py +2 -18
  516. pulumi_gcp/networkconnectivity/service_connection_policy.py +2 -18
  517. pulumi_gcp/networkconnectivity/spoke.py +2 -18
  518. pulumi_gcp/networkmanagement/connectivity_test.py +2 -18
  519. pulumi_gcp/networksecurity/address_group.py +2 -18
  520. pulumi_gcp/networksecurity/authorization_policy.py +2 -18
  521. pulumi_gcp/networksecurity/client_tls_policy.py +2 -18
  522. pulumi_gcp/networksecurity/gateway_security_policy.py +2 -18
  523. pulumi_gcp/networksecurity/gateway_security_policy_rule.py +2 -18
  524. pulumi_gcp/networksecurity/security_profile.py +2 -18
  525. pulumi_gcp/networksecurity/server_tls_policy.py +2 -18
  526. pulumi_gcp/networksecurity/tls_inspection_policy.py +2 -18
  527. pulumi_gcp/networksecurity/url_list.py +2 -18
  528. pulumi_gcp/networkservices/edge_cache_keyset.py +2 -18
  529. pulumi_gcp/networkservices/edge_cache_origin.py +2 -18
  530. pulumi_gcp/networkservices/edge_cache_service.py +2 -18
  531. pulumi_gcp/networkservices/endpoint_policy.py +2 -18
  532. pulumi_gcp/networkservices/gateway.py +2 -18
  533. pulumi_gcp/networkservices/grpc_route.py +2 -18
  534. pulumi_gcp/networkservices/http_route.py +2 -18
  535. pulumi_gcp/networkservices/mesh.py +2 -18
  536. pulumi_gcp/networkservices/service_binding.py +2 -18
  537. pulumi_gcp/networkservices/tcp_route.py +2 -18
  538. pulumi_gcp/networkservices/tls_route.py +2 -18
  539. pulumi_gcp/notebooks/environment.py +2 -18
  540. pulumi_gcp/notebooks/instance.py +2 -18
  541. pulumi_gcp/notebooks/location.py +2 -18
  542. pulumi_gcp/notebooks/runtime.py +2 -18
  543. pulumi_gcp/organizations/_inputs.py +4 -0
  544. pulumi_gcp/organizations/access_approval_settings.py +2 -18
  545. pulumi_gcp/organizations/folder.py +2 -18
  546. pulumi_gcp/organizations/iam_audit_config.py +2 -2
  547. pulumi_gcp/organizations/iam_member.py +6 -14
  548. pulumi_gcp/organizations/iam_policy.py +6 -14
  549. pulumi_gcp/organizations/outputs.py +4 -0
  550. pulumi_gcp/organizations/policy.py +2 -18
  551. pulumi_gcp/organizations/project.py +2 -18
  552. pulumi_gcp/orgpolicy/custom_constraint.py +2 -18
  553. pulumi_gcp/orgpolicy/policy.py +4 -16
  554. pulumi_gcp/osconfig/guest_policies.py +2 -18
  555. pulumi_gcp/osconfig/os_policy_assignment.py +2 -18
  556. pulumi_gcp/osconfig/patch_deployment.py +2 -18
  557. pulumi_gcp/oslogin/ssh_public_key.py +2 -18
  558. pulumi_gcp/projects/_inputs.py +4 -0
  559. pulumi_gcp/projects/access_approval_settings.py +2 -18
  560. pulumi_gcp/projects/api_key.py +2 -18
  561. pulumi_gcp/projects/iam_audit_config.py +6 -14
  562. pulumi_gcp/projects/iam_binding.py +6 -14
  563. pulumi_gcp/projects/iam_custom_role.py +2 -18
  564. pulumi_gcp/projects/iam_member.py +6 -14
  565. pulumi_gcp/projects/iam_policy.py +6 -14
  566. pulumi_gcp/projects/organization_policy.py +2 -18
  567. pulumi_gcp/projects/outputs.py +54 -0
  568. pulumi_gcp/projects/service.py +2 -18
  569. pulumi_gcp/projects/usage_export_bucket.py +2 -18
  570. pulumi_gcp/provider.py +60 -0
  571. pulumi_gcp/pubsub/_inputs.py +26 -4
  572. pulumi_gcp/pubsub/lite_reservation.py +2 -18
  573. pulumi_gcp/pubsub/lite_subscription.py +2 -18
  574. pulumi_gcp/pubsub/lite_topic.py +2 -18
  575. pulumi_gcp/pubsub/outputs.py +323 -4
  576. pulumi_gcp/pubsub/schema.py +2 -18
  577. pulumi_gcp/pubsub/subscription.py +82 -16
  578. pulumi_gcp/pubsub/subscription_iam_binding.py +4 -12
  579. pulumi_gcp/pubsub/subscription_iam_member.py +4 -12
  580. pulumi_gcp/pubsub/subscription_iam_policy.py +4 -12
  581. pulumi_gcp/pubsub/topic.py +2 -18
  582. pulumi_gcp/recaptcha/enterprise_key.py +2 -18
  583. pulumi_gcp/redis/cluster.py +2 -18
  584. pulumi_gcp/redis/instance.py +2 -18
  585. pulumi_gcp/redis/outputs.py +204 -0
  586. pulumi_gcp/resourcemanager/lien.py +2 -18
  587. pulumi_gcp/runtimeconfig/config.py +2 -18
  588. pulumi_gcp/runtimeconfig/variable.py +2 -18
  589. pulumi_gcp/secretmanager/outputs.py +88 -0
  590. pulumi_gcp/secretmanager/secret.py +2 -18
  591. pulumi_gcp/secretmanager/secret_version.py +2 -18
  592. pulumi_gcp/securesourcemanager/instance.py +2 -18
  593. pulumi_gcp/securitycenter/event_threat_detection_custom_module.py +2 -18
  594. pulumi_gcp/securitycenter/folder_custom_module.py +2 -18
  595. pulumi_gcp/securitycenter/instance_iam_binding.py +2 -18
  596. pulumi_gcp/securitycenter/instance_iam_member.py +2 -18
  597. pulumi_gcp/securitycenter/instance_iam_policy.py +2 -18
  598. pulumi_gcp/securitycenter/mute_config.py +2 -18
  599. pulumi_gcp/securitycenter/notification_config.py +2 -18
  600. pulumi_gcp/securitycenter/organization_custom_module.py +2 -18
  601. pulumi_gcp/securitycenter/project_custom_module.py +2 -18
  602. pulumi_gcp/securitycenter/source.py +2 -18
  603. pulumi_gcp/securitycenter/source_iam_binding.py +2 -18
  604. pulumi_gcp/securitycenter/source_iam_member.py +2 -18
  605. pulumi_gcp/securitycenter/source_iam_policy.py +2 -18
  606. pulumi_gcp/securityposture/__init__.py +11 -0
  607. pulumi_gcp/securityposture/_inputs.py +1364 -0
  608. pulumi_gcp/securityposture/outputs.py +1372 -0
  609. pulumi_gcp/securityposture/posture.py +828 -0
  610. pulumi_gcp/securityposture/posture_deployment.py +872 -0
  611. pulumi_gcp/serviceaccount/account.py +2 -18
  612. pulumi_gcp/servicedirectory/endpoint.py +2 -18
  613. pulumi_gcp/servicedirectory/namespace.py +2 -18
  614. pulumi_gcp/servicedirectory/service.py +2 -18
  615. pulumi_gcp/servicenetworking/connection.py +2 -18
  616. pulumi_gcp/servicenetworking/peered_dns_domain.py +2 -18
  617. pulumi_gcp/serviceusage/consumer_quota_override.py +2 -18
  618. pulumi_gcp/sourcerepo/outputs.py +20 -0
  619. pulumi_gcp/sourcerepo/repository.py +2 -18
  620. pulumi_gcp/spanner/database.py +2 -18
  621. pulumi_gcp/spanner/database_iam_binding.py +4 -12
  622. pulumi_gcp/spanner/database_iam_member.py +4 -12
  623. pulumi_gcp/spanner/database_iam_policy.py +4 -12
  624. pulumi_gcp/spanner/instance.py +2 -18
  625. pulumi_gcp/spanner/instance_iam_binding.py +4 -12
  626. pulumi_gcp/spanner/instance_iam_member.py +4 -12
  627. pulumi_gcp/spanner/instance_iam_policy.py +4 -12
  628. pulumi_gcp/spanner/outputs.py +68 -0
  629. pulumi_gcp/sql/_inputs.py +50 -0
  630. pulumi_gcp/sql/database.py +2 -18
  631. pulumi_gcp/sql/database_instance.py +2 -18
  632. pulumi_gcp/sql/outputs.py +904 -0
  633. pulumi_gcp/sql/source_representation_instance.py +2 -18
  634. pulumi_gcp/sql/user.py +2 -30
  635. pulumi_gcp/storage/bucket.py +2 -18
  636. pulumi_gcp/storage/bucket_access_control.py +2 -18
  637. pulumi_gcp/storage/default_object_access_control.py +2 -18
  638. pulumi_gcp/storage/hmac_key.py +2 -18
  639. pulumi_gcp/storage/insights_report_config.py +2 -18
  640. pulumi_gcp/storage/notification.py +2 -18
  641. pulumi_gcp/storage/object_access_control.py +2 -18
  642. pulumi_gcp/storage/outputs.py +188 -0
  643. pulumi_gcp/storage/transfer_agent_pool.py +2 -18
  644. pulumi_gcp/storage/transfer_job.py +2 -18
  645. pulumi_gcp/tags/location_tag_binding.py +2 -18
  646. pulumi_gcp/tags/tag_binding.py +2 -18
  647. pulumi_gcp/tags/tag_key.py +2 -18
  648. pulumi_gcp/tags/tag_value.py +2 -18
  649. pulumi_gcp/tpu/node.py +2 -18
  650. pulumi_gcp/tpu/v2_vm.py +2 -18
  651. pulumi_gcp/vertex/_inputs.py +166 -0
  652. pulumi_gcp/vertex/ai_endpoint.py +2 -18
  653. pulumi_gcp/vertex/ai_feature_group.py +2 -18
  654. pulumi_gcp/vertex/ai_feature_group_feature.py +2 -18
  655. pulumi_gcp/vertex/ai_feature_online_store.py +30 -46
  656. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +259 -19
  657. pulumi_gcp/vertex/ai_feature_store.py +9 -46
  658. pulumi_gcp/vertex/ai_feature_store_entity_type.py +9 -39
  659. pulumi_gcp/vertex/ai_feature_store_entity_type_feature.py +2 -18
  660. pulumi_gcp/vertex/ai_index.py +2 -18
  661. pulumi_gcp/vertex/ai_index_endpoint.py +2 -18
  662. pulumi_gcp/vertex/ai_metadata_store.py +2 -18
  663. pulumi_gcp/vertex/ai_tensorboard.py +2 -18
  664. pulumi_gcp/vertex/outputs.py +304 -0
  665. pulumi_gcp/vmwareengine/cluster.py +2 -18
  666. pulumi_gcp/vmwareengine/external_access_rule.py +2 -18
  667. pulumi_gcp/vmwareengine/external_address.py +2 -18
  668. pulumi_gcp/vmwareengine/network.py +2 -18
  669. pulumi_gcp/vmwareengine/network_peering.py +2 -18
  670. pulumi_gcp/vmwareengine/network_policy.py +2 -18
  671. pulumi_gcp/vmwareengine/outputs.py +208 -0
  672. pulumi_gcp/vmwareengine/private_cloud.py +2 -25
  673. pulumi_gcp/vmwareengine/subnet.py +2 -18
  674. pulumi_gcp/vpcaccess/connector.py +2 -18
  675. pulumi_gcp/vpcaccess/outputs.py +4 -0
  676. pulumi_gcp/workbench/instance.py +2 -18
  677. pulumi_gcp/workflows/workflow.py +75 -7
  678. pulumi_gcp/workstations/_inputs.py +38 -0
  679. pulumi_gcp/workstations/outputs.py +30 -0
  680. pulumi_gcp/workstations/workstation.py +2 -18
  681. pulumi_gcp/workstations/workstation_cluster.py +2 -18
  682. pulumi_gcp/workstations/workstation_config.py +56 -18
  683. {pulumi_gcp-7.7.0a1706207981.dist-info → pulumi_gcp-7.8.0.dist-info}/METADATA +2 -1
  684. {pulumi_gcp-7.7.0a1706207981.dist-info → pulumi_gcp-7.8.0.dist-info}/RECORD +686 -668
  685. {pulumi_gcp-7.7.0a1706207981.dist-info → pulumi_gcp-7.8.0.dist-info}/WHEEL +0 -0
  686. {pulumi_gcp-7.7.0a1706207981.dist-info → pulumi_gcp-7.8.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1364 @@
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
+
12
+ __all__ = [
13
+ 'PosturePolicySetArgs',
14
+ 'PosturePolicySetPolicyArgs',
15
+ 'PosturePolicySetPolicyComplianceStandardArgs',
16
+ 'PosturePolicySetPolicyConstraintArgs',
17
+ 'PosturePolicySetPolicyConstraintOrgPolicyConstraintArgs',
18
+ 'PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomArgs',
19
+ 'PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomCustomConstraintArgs',
20
+ 'PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleArgs',
21
+ 'PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleExprArgs',
22
+ 'PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleValuesArgs',
23
+ 'PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleArgs',
24
+ 'PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleExprArgs',
25
+ 'PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleValuesArgs',
26
+ 'PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleArgs',
27
+ 'PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigArgs',
28
+ 'PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputArgs',
29
+ 'PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyArgs',
30
+ 'PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyValueExpressionArgs',
31
+ 'PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigPredicateArgs',
32
+ 'PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigResourceSelectorArgs',
33
+ 'PosturePolicySetPolicyConstraintSecurityHealthAnalyticsModuleArgs',
34
+ ]
35
+
36
+ @pulumi.input_type
37
+ class PosturePolicySetArgs:
38
+ def __init__(__self__, *,
39
+ policy_set_id: pulumi.Input[str],
40
+ description: Optional[pulumi.Input[str]] = None,
41
+ policies: Optional[pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyArgs']]]] = None):
42
+ """
43
+ :param pulumi.Input[str] policy_set_id: ID of the policy set.
44
+ :param pulumi.Input[str] description: Description of the policy set.
45
+ :param pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyArgs']]] policies: List of security policy
46
+ Structure is documented below.
47
+ """
48
+ pulumi.set(__self__, "policy_set_id", policy_set_id)
49
+ if description is not None:
50
+ pulumi.set(__self__, "description", description)
51
+ if policies is not None:
52
+ pulumi.set(__self__, "policies", policies)
53
+
54
+ @property
55
+ @pulumi.getter(name="policySetId")
56
+ def policy_set_id(self) -> pulumi.Input[str]:
57
+ """
58
+ ID of the policy set.
59
+ """
60
+ return pulumi.get(self, "policy_set_id")
61
+
62
+ @policy_set_id.setter
63
+ def policy_set_id(self, value: pulumi.Input[str]):
64
+ pulumi.set(self, "policy_set_id", value)
65
+
66
+ @property
67
+ @pulumi.getter
68
+ def description(self) -> Optional[pulumi.Input[str]]:
69
+ """
70
+ Description of the policy set.
71
+ """
72
+ return pulumi.get(self, "description")
73
+
74
+ @description.setter
75
+ def description(self, value: Optional[pulumi.Input[str]]):
76
+ pulumi.set(self, "description", value)
77
+
78
+ @property
79
+ @pulumi.getter
80
+ def policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyArgs']]]]:
81
+ """
82
+ List of security policy
83
+ Structure is documented below.
84
+ """
85
+ return pulumi.get(self, "policies")
86
+
87
+ @policies.setter
88
+ def policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyArgs']]]]):
89
+ pulumi.set(self, "policies", value)
90
+
91
+
92
+ @pulumi.input_type
93
+ class PosturePolicySetPolicyArgs:
94
+ def __init__(__self__, *,
95
+ constraint: pulumi.Input['PosturePolicySetPolicyConstraintArgs'],
96
+ policy_id: pulumi.Input[str],
97
+ compliance_standards: Optional[pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyComplianceStandardArgs']]]] = None,
98
+ description: Optional[pulumi.Input[str]] = None):
99
+ """
100
+ :param pulumi.Input['PosturePolicySetPolicyConstraintArgs'] constraint: Policy constraint definition.It can have the definition of one of following constraints: orgPolicyConstraint orgPolicyConstraintCustom securityHealthAnalyticsModule securityHealthAnalyticsCustomModule
101
+ Structure is documented below.
102
+ :param pulumi.Input[str] policy_id: ID of the policy.
103
+ :param pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyComplianceStandardArgs']]] compliance_standards: Mapping for policy to security standards and controls.
104
+ Structure is documented below.
105
+ :param pulumi.Input[str] description: Description of the policy.
106
+ """
107
+ pulumi.set(__self__, "constraint", constraint)
108
+ pulumi.set(__self__, "policy_id", policy_id)
109
+ if compliance_standards is not None:
110
+ pulumi.set(__self__, "compliance_standards", compliance_standards)
111
+ if description is not None:
112
+ pulumi.set(__self__, "description", description)
113
+
114
+ @property
115
+ @pulumi.getter
116
+ def constraint(self) -> pulumi.Input['PosturePolicySetPolicyConstraintArgs']:
117
+ """
118
+ Policy constraint definition.It can have the definition of one of following constraints: orgPolicyConstraint orgPolicyConstraintCustom securityHealthAnalyticsModule securityHealthAnalyticsCustomModule
119
+ Structure is documented below.
120
+ """
121
+ return pulumi.get(self, "constraint")
122
+
123
+ @constraint.setter
124
+ def constraint(self, value: pulumi.Input['PosturePolicySetPolicyConstraintArgs']):
125
+ pulumi.set(self, "constraint", value)
126
+
127
+ @property
128
+ @pulumi.getter(name="policyId")
129
+ def policy_id(self) -> pulumi.Input[str]:
130
+ """
131
+ ID of the policy.
132
+ """
133
+ return pulumi.get(self, "policy_id")
134
+
135
+ @policy_id.setter
136
+ def policy_id(self, value: pulumi.Input[str]):
137
+ pulumi.set(self, "policy_id", value)
138
+
139
+ @property
140
+ @pulumi.getter(name="complianceStandards")
141
+ def compliance_standards(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyComplianceStandardArgs']]]]:
142
+ """
143
+ Mapping for policy to security standards and controls.
144
+ Structure is documented below.
145
+ """
146
+ return pulumi.get(self, "compliance_standards")
147
+
148
+ @compliance_standards.setter
149
+ def compliance_standards(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyComplianceStandardArgs']]]]):
150
+ pulumi.set(self, "compliance_standards", value)
151
+
152
+ @property
153
+ @pulumi.getter
154
+ def description(self) -> Optional[pulumi.Input[str]]:
155
+ """
156
+ Description of the policy.
157
+ """
158
+ return pulumi.get(self, "description")
159
+
160
+ @description.setter
161
+ def description(self, value: Optional[pulumi.Input[str]]):
162
+ pulumi.set(self, "description", value)
163
+
164
+
165
+ @pulumi.input_type
166
+ class PosturePolicySetPolicyComplianceStandardArgs:
167
+ def __init__(__self__, *,
168
+ control: Optional[pulumi.Input[str]] = None,
169
+ standard: Optional[pulumi.Input[str]] = None):
170
+ """
171
+ :param pulumi.Input[str] control: Mapping of security controls for the policy.
172
+ :param pulumi.Input[str] standard: Mapping of compliance standards for the policy.
173
+ """
174
+ if control is not None:
175
+ pulumi.set(__self__, "control", control)
176
+ if standard is not None:
177
+ pulumi.set(__self__, "standard", standard)
178
+
179
+ @property
180
+ @pulumi.getter
181
+ def control(self) -> Optional[pulumi.Input[str]]:
182
+ """
183
+ Mapping of security controls for the policy.
184
+ """
185
+ return pulumi.get(self, "control")
186
+
187
+ @control.setter
188
+ def control(self, value: Optional[pulumi.Input[str]]):
189
+ pulumi.set(self, "control", value)
190
+
191
+ @property
192
+ @pulumi.getter
193
+ def standard(self) -> Optional[pulumi.Input[str]]:
194
+ """
195
+ Mapping of compliance standards for the policy.
196
+ """
197
+ return pulumi.get(self, "standard")
198
+
199
+ @standard.setter
200
+ def standard(self, value: Optional[pulumi.Input[str]]):
201
+ pulumi.set(self, "standard", value)
202
+
203
+
204
+ @pulumi.input_type
205
+ class PosturePolicySetPolicyConstraintArgs:
206
+ def __init__(__self__, *,
207
+ org_policy_constraint: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintArgs']] = None,
208
+ org_policy_constraint_custom: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomArgs']] = None,
209
+ security_health_analytics_custom_module: Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleArgs']] = None,
210
+ security_health_analytics_module: Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsModuleArgs']] = None):
211
+ """
212
+ :param pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintArgs'] org_policy_constraint: Organization policy canned constraint definition.
213
+ Structure is documented below.
214
+ :param pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomArgs'] org_policy_constraint_custom: Organization policy custom constraint policy definition.
215
+ Structure is documented below.
216
+ :param pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleArgs'] security_health_analytics_custom_module: Definition of Security Health Analytics Custom Module.
217
+ Structure is documented below.
218
+ :param pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsModuleArgs'] security_health_analytics_module: Security Health Analytics built-in detector definition.
219
+ Structure is documented below.
220
+ """
221
+ if org_policy_constraint is not None:
222
+ pulumi.set(__self__, "org_policy_constraint", org_policy_constraint)
223
+ if org_policy_constraint_custom is not None:
224
+ pulumi.set(__self__, "org_policy_constraint_custom", org_policy_constraint_custom)
225
+ if security_health_analytics_custom_module is not None:
226
+ pulumi.set(__self__, "security_health_analytics_custom_module", security_health_analytics_custom_module)
227
+ if security_health_analytics_module is not None:
228
+ pulumi.set(__self__, "security_health_analytics_module", security_health_analytics_module)
229
+
230
+ @property
231
+ @pulumi.getter(name="orgPolicyConstraint")
232
+ def org_policy_constraint(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintArgs']]:
233
+ """
234
+ Organization policy canned constraint definition.
235
+ Structure is documented below.
236
+ """
237
+ return pulumi.get(self, "org_policy_constraint")
238
+
239
+ @org_policy_constraint.setter
240
+ def org_policy_constraint(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintArgs']]):
241
+ pulumi.set(self, "org_policy_constraint", value)
242
+
243
+ @property
244
+ @pulumi.getter(name="orgPolicyConstraintCustom")
245
+ def org_policy_constraint_custom(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomArgs']]:
246
+ """
247
+ Organization policy custom constraint policy definition.
248
+ Structure is documented below.
249
+ """
250
+ return pulumi.get(self, "org_policy_constraint_custom")
251
+
252
+ @org_policy_constraint_custom.setter
253
+ def org_policy_constraint_custom(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomArgs']]):
254
+ pulumi.set(self, "org_policy_constraint_custom", value)
255
+
256
+ @property
257
+ @pulumi.getter(name="securityHealthAnalyticsCustomModule")
258
+ def security_health_analytics_custom_module(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleArgs']]:
259
+ """
260
+ Definition of Security Health Analytics Custom Module.
261
+ Structure is documented below.
262
+ """
263
+ return pulumi.get(self, "security_health_analytics_custom_module")
264
+
265
+ @security_health_analytics_custom_module.setter
266
+ def security_health_analytics_custom_module(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleArgs']]):
267
+ pulumi.set(self, "security_health_analytics_custom_module", value)
268
+
269
+ @property
270
+ @pulumi.getter(name="securityHealthAnalyticsModule")
271
+ def security_health_analytics_module(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsModuleArgs']]:
272
+ """
273
+ Security Health Analytics built-in detector definition.
274
+ Structure is documented below.
275
+ """
276
+ return pulumi.get(self, "security_health_analytics_module")
277
+
278
+ @security_health_analytics_module.setter
279
+ def security_health_analytics_module(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsModuleArgs']]):
280
+ pulumi.set(self, "security_health_analytics_module", value)
281
+
282
+
283
+ @pulumi.input_type
284
+ class PosturePolicySetPolicyConstraintOrgPolicyConstraintArgs:
285
+ def __init__(__self__, *,
286
+ canned_constraint_id: pulumi.Input[str],
287
+ policy_rules: pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleArgs']]]):
288
+ """
289
+ :param pulumi.Input[str] canned_constraint_id: Organization policy canned constraint Id
290
+ :param pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleArgs']]] policy_rules: Definition of policy rules
291
+ Structure is documented below.
292
+ """
293
+ pulumi.set(__self__, "canned_constraint_id", canned_constraint_id)
294
+ pulumi.set(__self__, "policy_rules", policy_rules)
295
+
296
+ @property
297
+ @pulumi.getter(name="cannedConstraintId")
298
+ def canned_constraint_id(self) -> pulumi.Input[str]:
299
+ """
300
+ Organization policy canned constraint Id
301
+ """
302
+ return pulumi.get(self, "canned_constraint_id")
303
+
304
+ @canned_constraint_id.setter
305
+ def canned_constraint_id(self, value: pulumi.Input[str]):
306
+ pulumi.set(self, "canned_constraint_id", value)
307
+
308
+ @property
309
+ @pulumi.getter(name="policyRules")
310
+ def policy_rules(self) -> pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleArgs']]]:
311
+ """
312
+ Definition of policy rules
313
+ Structure is documented below.
314
+ """
315
+ return pulumi.get(self, "policy_rules")
316
+
317
+ @policy_rules.setter
318
+ def policy_rules(self, value: pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleArgs']]]):
319
+ pulumi.set(self, "policy_rules", value)
320
+
321
+
322
+ @pulumi.input_type
323
+ class PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomArgs:
324
+ def __init__(__self__, *,
325
+ policy_rules: pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleArgs']]],
326
+ custom_constraint: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomCustomConstraintArgs']] = None):
327
+ """
328
+ :param pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleArgs']]] policy_rules: Definition of policy rules
329
+ Structure is documented below.
330
+ :param pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomCustomConstraintArgs'] custom_constraint: Organization policy custom constraint definition.
331
+ Structure is documented below.
332
+ """
333
+ pulumi.set(__self__, "policy_rules", policy_rules)
334
+ if custom_constraint is not None:
335
+ pulumi.set(__self__, "custom_constraint", custom_constraint)
336
+
337
+ @property
338
+ @pulumi.getter(name="policyRules")
339
+ def policy_rules(self) -> pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleArgs']]]:
340
+ """
341
+ Definition of policy rules
342
+ Structure is documented below.
343
+ """
344
+ return pulumi.get(self, "policy_rules")
345
+
346
+ @policy_rules.setter
347
+ def policy_rules(self, value: pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleArgs']]]):
348
+ pulumi.set(self, "policy_rules", value)
349
+
350
+ @property
351
+ @pulumi.getter(name="customConstraint")
352
+ def custom_constraint(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomCustomConstraintArgs']]:
353
+ """
354
+ Organization policy custom constraint definition.
355
+ Structure is documented below.
356
+ """
357
+ return pulumi.get(self, "custom_constraint")
358
+
359
+ @custom_constraint.setter
360
+ def custom_constraint(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomCustomConstraintArgs']]):
361
+ pulumi.set(self, "custom_constraint", value)
362
+
363
+
364
+ @pulumi.input_type
365
+ class PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomCustomConstraintArgs:
366
+ def __init__(__self__, *,
367
+ action_type: pulumi.Input[str],
368
+ condition: pulumi.Input[str],
369
+ method_types: pulumi.Input[Sequence[pulumi.Input[str]]],
370
+ name: pulumi.Input[str],
371
+ resource_types: pulumi.Input[Sequence[pulumi.Input[str]]],
372
+ description: Optional[pulumi.Input[str]] = None,
373
+ display_name: Optional[pulumi.Input[str]] = None):
374
+ """
375
+ :param pulumi.Input[str] action_type: The action to take if the condition is met.
376
+ Possible values are: `ALLOW`, `DENY`.
377
+ :param pulumi.Input[str] condition: A CEL condition that refers to a supported service resource, for example `resource.management.autoUpgrade == false`. For details about CEL usage, see [Common Expression Language](https://cloud.google.com/resource-manager/docs/organization-policy/creating-managing-custom-constraints#common_expression_language).
378
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] method_types: A list of RESTful methods for which to enforce the constraint. Can be `CREATE`, `UPDATE`, or both. Not all Google Cloud services support both methods. To see supported methods for each service, find the service in [Supported services](https://cloud.google.com/resource-manager/docs/organization-policy/custom-constraint-supported-services).
379
+ :param pulumi.Input[str] name: Immutable. The name of the custom constraint. This is unique within the organization.
380
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] resource_types: Immutable. The fully qualified name of the Google Cloud REST resource containing the object and field you want to restrict. For example, `container.googleapis.com/NodePool`.
381
+ :param pulumi.Input[str] description: A human-friendly description of the constraint to display as an error message when the policy is violated.
382
+ :param pulumi.Input[str] display_name: A human-friendly name for the constraint.
383
+ """
384
+ pulumi.set(__self__, "action_type", action_type)
385
+ pulumi.set(__self__, "condition", condition)
386
+ pulumi.set(__self__, "method_types", method_types)
387
+ pulumi.set(__self__, "name", name)
388
+ pulumi.set(__self__, "resource_types", resource_types)
389
+ if description is not None:
390
+ pulumi.set(__self__, "description", description)
391
+ if display_name is not None:
392
+ pulumi.set(__self__, "display_name", display_name)
393
+
394
+ @property
395
+ @pulumi.getter(name="actionType")
396
+ def action_type(self) -> pulumi.Input[str]:
397
+ """
398
+ The action to take if the condition is met.
399
+ Possible values are: `ALLOW`, `DENY`.
400
+ """
401
+ return pulumi.get(self, "action_type")
402
+
403
+ @action_type.setter
404
+ def action_type(self, value: pulumi.Input[str]):
405
+ pulumi.set(self, "action_type", value)
406
+
407
+ @property
408
+ @pulumi.getter
409
+ def condition(self) -> pulumi.Input[str]:
410
+ """
411
+ A CEL condition that refers to a supported service resource, for example `resource.management.autoUpgrade == false`. For details about CEL usage, see [Common Expression Language](https://cloud.google.com/resource-manager/docs/organization-policy/creating-managing-custom-constraints#common_expression_language).
412
+ """
413
+ return pulumi.get(self, "condition")
414
+
415
+ @condition.setter
416
+ def condition(self, value: pulumi.Input[str]):
417
+ pulumi.set(self, "condition", value)
418
+
419
+ @property
420
+ @pulumi.getter(name="methodTypes")
421
+ def method_types(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
422
+ """
423
+ A list of RESTful methods for which to enforce the constraint. Can be `CREATE`, `UPDATE`, or both. Not all Google Cloud services support both methods. To see supported methods for each service, find the service in [Supported services](https://cloud.google.com/resource-manager/docs/organization-policy/custom-constraint-supported-services).
424
+ """
425
+ return pulumi.get(self, "method_types")
426
+
427
+ @method_types.setter
428
+ def method_types(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
429
+ pulumi.set(self, "method_types", value)
430
+
431
+ @property
432
+ @pulumi.getter
433
+ def name(self) -> pulumi.Input[str]:
434
+ """
435
+ Immutable. The name of the custom constraint. This is unique within the organization.
436
+ """
437
+ return pulumi.get(self, "name")
438
+
439
+ @name.setter
440
+ def name(self, value: pulumi.Input[str]):
441
+ pulumi.set(self, "name", value)
442
+
443
+ @property
444
+ @pulumi.getter(name="resourceTypes")
445
+ def resource_types(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
446
+ """
447
+ Immutable. The fully qualified name of the Google Cloud REST resource containing the object and field you want to restrict. For example, `container.googleapis.com/NodePool`.
448
+ """
449
+ return pulumi.get(self, "resource_types")
450
+
451
+ @resource_types.setter
452
+ def resource_types(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
453
+ pulumi.set(self, "resource_types", value)
454
+
455
+ @property
456
+ @pulumi.getter
457
+ def description(self) -> Optional[pulumi.Input[str]]:
458
+ """
459
+ A human-friendly description of the constraint to display as an error message when the policy is violated.
460
+ """
461
+ return pulumi.get(self, "description")
462
+
463
+ @description.setter
464
+ def description(self, value: Optional[pulumi.Input[str]]):
465
+ pulumi.set(self, "description", value)
466
+
467
+ @property
468
+ @pulumi.getter(name="displayName")
469
+ def display_name(self) -> Optional[pulumi.Input[str]]:
470
+ """
471
+ A human-friendly name for the constraint.
472
+ """
473
+ return pulumi.get(self, "display_name")
474
+
475
+ @display_name.setter
476
+ def display_name(self, value: Optional[pulumi.Input[str]]):
477
+ pulumi.set(self, "display_name", value)
478
+
479
+
480
+ @pulumi.input_type
481
+ class PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleArgs:
482
+ def __init__(__self__, *,
483
+ allow_all: Optional[pulumi.Input[bool]] = None,
484
+ deny_all: Optional[pulumi.Input[bool]] = None,
485
+ enforce: Optional[pulumi.Input[bool]] = None,
486
+ expr: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleExprArgs']] = None,
487
+ values: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleValuesArgs']] = None):
488
+ """
489
+ :param pulumi.Input[bool] allow_all: Setting this to true means that all values are allowed. This field can be set only in policies for list constraints.
490
+ :param pulumi.Input[bool] deny_all: Setting this to true means that all values are denied. This field can be set only in policies for list constraints.
491
+ :param pulumi.Input[bool] enforce: If `true`, then the policy is enforced. If `false`, then any configuration is acceptable.
492
+ This field can be set only in policies for boolean constraints.
493
+ :param pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleExprArgs'] expr: Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language.
494
+ This page details the objects and attributes that are used to the build the CEL expressions for
495
+ custom access levels - https://cloud.google.com/access-context-manager/docs/custom-access-level-spec.
496
+ Structure is documented below.
497
+ :param pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleValuesArgs'] values: List of values to be used for this policy rule. This field can be set only in policies for list constraints.
498
+ Structure is documented below.
499
+ """
500
+ if allow_all is not None:
501
+ pulumi.set(__self__, "allow_all", allow_all)
502
+ if deny_all is not None:
503
+ pulumi.set(__self__, "deny_all", deny_all)
504
+ if enforce is not None:
505
+ pulumi.set(__self__, "enforce", enforce)
506
+ if expr is not None:
507
+ pulumi.set(__self__, "expr", expr)
508
+ if values is not None:
509
+ pulumi.set(__self__, "values", values)
510
+
511
+ @property
512
+ @pulumi.getter(name="allowAll")
513
+ def allow_all(self) -> Optional[pulumi.Input[bool]]:
514
+ """
515
+ Setting this to true means that all values are allowed. This field can be set only in policies for list constraints.
516
+ """
517
+ return pulumi.get(self, "allow_all")
518
+
519
+ @allow_all.setter
520
+ def allow_all(self, value: Optional[pulumi.Input[bool]]):
521
+ pulumi.set(self, "allow_all", value)
522
+
523
+ @property
524
+ @pulumi.getter(name="denyAll")
525
+ def deny_all(self) -> Optional[pulumi.Input[bool]]:
526
+ """
527
+ Setting this to true means that all values are denied. This field can be set only in policies for list constraints.
528
+ """
529
+ return pulumi.get(self, "deny_all")
530
+
531
+ @deny_all.setter
532
+ def deny_all(self, value: Optional[pulumi.Input[bool]]):
533
+ pulumi.set(self, "deny_all", value)
534
+
535
+ @property
536
+ @pulumi.getter
537
+ def enforce(self) -> Optional[pulumi.Input[bool]]:
538
+ """
539
+ If `true`, then the policy is enforced. If `false`, then any configuration is acceptable.
540
+ This field can be set only in policies for boolean constraints.
541
+ """
542
+ return pulumi.get(self, "enforce")
543
+
544
+ @enforce.setter
545
+ def enforce(self, value: Optional[pulumi.Input[bool]]):
546
+ pulumi.set(self, "enforce", value)
547
+
548
+ @property
549
+ @pulumi.getter
550
+ def expr(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleExprArgs']]:
551
+ """
552
+ Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language.
553
+ This page details the objects and attributes that are used to the build the CEL expressions for
554
+ custom access levels - https://cloud.google.com/access-context-manager/docs/custom-access-level-spec.
555
+ Structure is documented below.
556
+ """
557
+ return pulumi.get(self, "expr")
558
+
559
+ @expr.setter
560
+ def expr(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleExprArgs']]):
561
+ pulumi.set(self, "expr", value)
562
+
563
+ @property
564
+ @pulumi.getter
565
+ def values(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleValuesArgs']]:
566
+ """
567
+ List of values to be used for this policy rule. This field can be set only in policies for list constraints.
568
+ Structure is documented below.
569
+ """
570
+ return pulumi.get(self, "values")
571
+
572
+ @values.setter
573
+ def values(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleValuesArgs']]):
574
+ pulumi.set(self, "values", value)
575
+
576
+
577
+ @pulumi.input_type
578
+ class PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleExprArgs:
579
+ def __init__(__self__, *,
580
+ expression: pulumi.Input[str],
581
+ description: Optional[pulumi.Input[str]] = None,
582
+ location: Optional[pulumi.Input[str]] = None,
583
+ title: Optional[pulumi.Input[str]] = None):
584
+ """
585
+ :param pulumi.Input[str] expression: Textual representation of an expression in Common Expression Language syntax.
586
+ :param pulumi.Input[str] description: Description of the expression
587
+ :param pulumi.Input[str] location: String indicating the location of the expression for error reporting, e.g. a file name and a position in the file
588
+ :param pulumi.Input[str] title: Title for the expression, i.e. a short string describing its purpose.
589
+ """
590
+ pulumi.set(__self__, "expression", expression)
591
+ if description is not None:
592
+ pulumi.set(__self__, "description", description)
593
+ if location is not None:
594
+ pulumi.set(__self__, "location", location)
595
+ if title is not None:
596
+ pulumi.set(__self__, "title", title)
597
+
598
+ @property
599
+ @pulumi.getter
600
+ def expression(self) -> pulumi.Input[str]:
601
+ """
602
+ Textual representation of an expression in Common Expression Language syntax.
603
+ """
604
+ return pulumi.get(self, "expression")
605
+
606
+ @expression.setter
607
+ def expression(self, value: pulumi.Input[str]):
608
+ pulumi.set(self, "expression", value)
609
+
610
+ @property
611
+ @pulumi.getter
612
+ def description(self) -> Optional[pulumi.Input[str]]:
613
+ """
614
+ Description of the expression
615
+ """
616
+ return pulumi.get(self, "description")
617
+
618
+ @description.setter
619
+ def description(self, value: Optional[pulumi.Input[str]]):
620
+ pulumi.set(self, "description", value)
621
+
622
+ @property
623
+ @pulumi.getter
624
+ def location(self) -> Optional[pulumi.Input[str]]:
625
+ """
626
+ String indicating the location of the expression for error reporting, e.g. a file name and a position in the file
627
+ """
628
+ return pulumi.get(self, "location")
629
+
630
+ @location.setter
631
+ def location(self, value: Optional[pulumi.Input[str]]):
632
+ pulumi.set(self, "location", value)
633
+
634
+ @property
635
+ @pulumi.getter
636
+ def title(self) -> Optional[pulumi.Input[str]]:
637
+ """
638
+ Title for the expression, i.e. a short string describing its purpose.
639
+ """
640
+ return pulumi.get(self, "title")
641
+
642
+ @title.setter
643
+ def title(self, value: Optional[pulumi.Input[str]]):
644
+ pulumi.set(self, "title", value)
645
+
646
+
647
+ @pulumi.input_type
648
+ class PosturePolicySetPolicyConstraintOrgPolicyConstraintCustomPolicyRuleValuesArgs:
649
+ def __init__(__self__, *,
650
+ allowed_values: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
651
+ denied_values: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
652
+ """
653
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_values: List of values allowed at this resource.
654
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] denied_values: List of values denied at this resource.
655
+ """
656
+ if allowed_values is not None:
657
+ pulumi.set(__self__, "allowed_values", allowed_values)
658
+ if denied_values is not None:
659
+ pulumi.set(__self__, "denied_values", denied_values)
660
+
661
+ @property
662
+ @pulumi.getter(name="allowedValues")
663
+ def allowed_values(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
664
+ """
665
+ List of values allowed at this resource.
666
+ """
667
+ return pulumi.get(self, "allowed_values")
668
+
669
+ @allowed_values.setter
670
+ def allowed_values(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
671
+ pulumi.set(self, "allowed_values", value)
672
+
673
+ @property
674
+ @pulumi.getter(name="deniedValues")
675
+ def denied_values(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
676
+ """
677
+ List of values denied at this resource.
678
+ """
679
+ return pulumi.get(self, "denied_values")
680
+
681
+ @denied_values.setter
682
+ def denied_values(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
683
+ pulumi.set(self, "denied_values", value)
684
+
685
+
686
+ @pulumi.input_type
687
+ class PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleArgs:
688
+ def __init__(__self__, *,
689
+ allow_all: Optional[pulumi.Input[bool]] = None,
690
+ deny_all: Optional[pulumi.Input[bool]] = None,
691
+ enforce: Optional[pulumi.Input[bool]] = None,
692
+ expr: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleExprArgs']] = None,
693
+ values: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleValuesArgs']] = None):
694
+ """
695
+ :param pulumi.Input[bool] allow_all: Setting this to true means that all values are allowed. This field can be set only in policies for list constraints.
696
+ :param pulumi.Input[bool] deny_all: Setting this to true means that all values are denied. This field can be set only in policies for list constraints.
697
+ :param pulumi.Input[bool] enforce: If `true`, then the policy is enforced. If `false`, then any configuration is acceptable.
698
+ This field can be set only in policies for boolean constraints.
699
+ :param pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleExprArgs'] expr: Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language.
700
+ This page details the objects and attributes that are used to the build the CEL expressions for
701
+ custom access levels - https://cloud.google.com/access-context-manager/docs/custom-access-level-spec.
702
+ Structure is documented below.
703
+ :param pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleValuesArgs'] values: List of values to be used for this policy rule. This field can be set only in policies for list constraints.
704
+ Structure is documented below.
705
+ """
706
+ if allow_all is not None:
707
+ pulumi.set(__self__, "allow_all", allow_all)
708
+ if deny_all is not None:
709
+ pulumi.set(__self__, "deny_all", deny_all)
710
+ if enforce is not None:
711
+ pulumi.set(__self__, "enforce", enforce)
712
+ if expr is not None:
713
+ pulumi.set(__self__, "expr", expr)
714
+ if values is not None:
715
+ pulumi.set(__self__, "values", values)
716
+
717
+ @property
718
+ @pulumi.getter(name="allowAll")
719
+ def allow_all(self) -> Optional[pulumi.Input[bool]]:
720
+ """
721
+ Setting this to true means that all values are allowed. This field can be set only in policies for list constraints.
722
+ """
723
+ return pulumi.get(self, "allow_all")
724
+
725
+ @allow_all.setter
726
+ def allow_all(self, value: Optional[pulumi.Input[bool]]):
727
+ pulumi.set(self, "allow_all", value)
728
+
729
+ @property
730
+ @pulumi.getter(name="denyAll")
731
+ def deny_all(self) -> Optional[pulumi.Input[bool]]:
732
+ """
733
+ Setting this to true means that all values are denied. This field can be set only in policies for list constraints.
734
+ """
735
+ return pulumi.get(self, "deny_all")
736
+
737
+ @deny_all.setter
738
+ def deny_all(self, value: Optional[pulumi.Input[bool]]):
739
+ pulumi.set(self, "deny_all", value)
740
+
741
+ @property
742
+ @pulumi.getter
743
+ def enforce(self) -> Optional[pulumi.Input[bool]]:
744
+ """
745
+ If `true`, then the policy is enforced. If `false`, then any configuration is acceptable.
746
+ This field can be set only in policies for boolean constraints.
747
+ """
748
+ return pulumi.get(self, "enforce")
749
+
750
+ @enforce.setter
751
+ def enforce(self, value: Optional[pulumi.Input[bool]]):
752
+ pulumi.set(self, "enforce", value)
753
+
754
+ @property
755
+ @pulumi.getter
756
+ def expr(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleExprArgs']]:
757
+ """
758
+ Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language.
759
+ This page details the objects and attributes that are used to the build the CEL expressions for
760
+ custom access levels - https://cloud.google.com/access-context-manager/docs/custom-access-level-spec.
761
+ Structure is documented below.
762
+ """
763
+ return pulumi.get(self, "expr")
764
+
765
+ @expr.setter
766
+ def expr(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleExprArgs']]):
767
+ pulumi.set(self, "expr", value)
768
+
769
+ @property
770
+ @pulumi.getter
771
+ def values(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleValuesArgs']]:
772
+ """
773
+ List of values to be used for this policy rule. This field can be set only in policies for list constraints.
774
+ Structure is documented below.
775
+ """
776
+ return pulumi.get(self, "values")
777
+
778
+ @values.setter
779
+ def values(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleValuesArgs']]):
780
+ pulumi.set(self, "values", value)
781
+
782
+
783
+ @pulumi.input_type
784
+ class PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleExprArgs:
785
+ def __init__(__self__, *,
786
+ expression: pulumi.Input[str],
787
+ description: Optional[pulumi.Input[str]] = None,
788
+ location: Optional[pulumi.Input[str]] = None,
789
+ title: Optional[pulumi.Input[str]] = None):
790
+ """
791
+ :param pulumi.Input[str] expression: Textual representation of an expression in Common Expression Language syntax.
792
+ :param pulumi.Input[str] description: Description of the expression
793
+ :param pulumi.Input[str] location: String indicating the location of the expression for error reporting, e.g. a file name and a position in the file
794
+ :param pulumi.Input[str] title: Title for the expression, i.e. a short string describing its purpose.
795
+ """
796
+ pulumi.set(__self__, "expression", expression)
797
+ if description is not None:
798
+ pulumi.set(__self__, "description", description)
799
+ if location is not None:
800
+ pulumi.set(__self__, "location", location)
801
+ if title is not None:
802
+ pulumi.set(__self__, "title", title)
803
+
804
+ @property
805
+ @pulumi.getter
806
+ def expression(self) -> pulumi.Input[str]:
807
+ """
808
+ Textual representation of an expression in Common Expression Language syntax.
809
+ """
810
+ return pulumi.get(self, "expression")
811
+
812
+ @expression.setter
813
+ def expression(self, value: pulumi.Input[str]):
814
+ pulumi.set(self, "expression", value)
815
+
816
+ @property
817
+ @pulumi.getter
818
+ def description(self) -> Optional[pulumi.Input[str]]:
819
+ """
820
+ Description of the expression
821
+ """
822
+ return pulumi.get(self, "description")
823
+
824
+ @description.setter
825
+ def description(self, value: Optional[pulumi.Input[str]]):
826
+ pulumi.set(self, "description", value)
827
+
828
+ @property
829
+ @pulumi.getter
830
+ def location(self) -> Optional[pulumi.Input[str]]:
831
+ """
832
+ String indicating the location of the expression for error reporting, e.g. a file name and a position in the file
833
+ """
834
+ return pulumi.get(self, "location")
835
+
836
+ @location.setter
837
+ def location(self, value: Optional[pulumi.Input[str]]):
838
+ pulumi.set(self, "location", value)
839
+
840
+ @property
841
+ @pulumi.getter
842
+ def title(self) -> Optional[pulumi.Input[str]]:
843
+ """
844
+ Title for the expression, i.e. a short string describing its purpose.
845
+ """
846
+ return pulumi.get(self, "title")
847
+
848
+ @title.setter
849
+ def title(self, value: Optional[pulumi.Input[str]]):
850
+ pulumi.set(self, "title", value)
851
+
852
+
853
+ @pulumi.input_type
854
+ class PosturePolicySetPolicyConstraintOrgPolicyConstraintPolicyRuleValuesArgs:
855
+ def __init__(__self__, *,
856
+ allowed_values: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
857
+ denied_values: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
858
+ """
859
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_values: List of values allowed at this resource.
860
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] denied_values: List of values denied at this resource.
861
+ """
862
+ if allowed_values is not None:
863
+ pulumi.set(__self__, "allowed_values", allowed_values)
864
+ if denied_values is not None:
865
+ pulumi.set(__self__, "denied_values", denied_values)
866
+
867
+ @property
868
+ @pulumi.getter(name="allowedValues")
869
+ def allowed_values(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
870
+ """
871
+ List of values allowed at this resource.
872
+ """
873
+ return pulumi.get(self, "allowed_values")
874
+
875
+ @allowed_values.setter
876
+ def allowed_values(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
877
+ pulumi.set(self, "allowed_values", value)
878
+
879
+ @property
880
+ @pulumi.getter(name="deniedValues")
881
+ def denied_values(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
882
+ """
883
+ List of values denied at this resource.
884
+ """
885
+ return pulumi.get(self, "denied_values")
886
+
887
+ @denied_values.setter
888
+ def denied_values(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
889
+ pulumi.set(self, "denied_values", value)
890
+
891
+
892
+ @pulumi.input_type
893
+ class PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleArgs:
894
+ def __init__(__self__, *,
895
+ config: pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigArgs'],
896
+ display_name: Optional[pulumi.Input[str]] = None,
897
+ id: Optional[pulumi.Input[str]] = None,
898
+ module_enablement_state: Optional[pulumi.Input[str]] = None):
899
+ """
900
+ :param pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigArgs'] config: Custom module details.
901
+ Structure is documented below.
902
+ :param pulumi.Input[str] display_name: The display name of the Security Health Analytics custom module. This
903
+ display name becomes the finding category for all findings that are
904
+ returned by this custom module.
905
+ :param pulumi.Input[str] id: (Output)
906
+ A server generated id of custom module.
907
+ :param pulumi.Input[str] module_enablement_state: The state of enablement for the module at its level of the resource hierarchy.
908
+ Possible values are: `ENABLEMENT_STATE_UNSPECIFIED`, `ENABLED`, `DISABLED`.
909
+ """
910
+ pulumi.set(__self__, "config", config)
911
+ if display_name is not None:
912
+ pulumi.set(__self__, "display_name", display_name)
913
+ if id is not None:
914
+ pulumi.set(__self__, "id", id)
915
+ if module_enablement_state is not None:
916
+ pulumi.set(__self__, "module_enablement_state", module_enablement_state)
917
+
918
+ @property
919
+ @pulumi.getter
920
+ def config(self) -> pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigArgs']:
921
+ """
922
+ Custom module details.
923
+ Structure is documented below.
924
+ """
925
+ return pulumi.get(self, "config")
926
+
927
+ @config.setter
928
+ def config(self, value: pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigArgs']):
929
+ pulumi.set(self, "config", value)
930
+
931
+ @property
932
+ @pulumi.getter(name="displayName")
933
+ def display_name(self) -> Optional[pulumi.Input[str]]:
934
+ """
935
+ The display name of the Security Health Analytics custom module. This
936
+ display name becomes the finding category for all findings that are
937
+ returned by this custom module.
938
+ """
939
+ return pulumi.get(self, "display_name")
940
+
941
+ @display_name.setter
942
+ def display_name(self, value: Optional[pulumi.Input[str]]):
943
+ pulumi.set(self, "display_name", value)
944
+
945
+ @property
946
+ @pulumi.getter
947
+ def id(self) -> Optional[pulumi.Input[str]]:
948
+ """
949
+ (Output)
950
+ A server generated id of custom module.
951
+ """
952
+ return pulumi.get(self, "id")
953
+
954
+ @id.setter
955
+ def id(self, value: Optional[pulumi.Input[str]]):
956
+ pulumi.set(self, "id", value)
957
+
958
+ @property
959
+ @pulumi.getter(name="moduleEnablementState")
960
+ def module_enablement_state(self) -> Optional[pulumi.Input[str]]:
961
+ """
962
+ The state of enablement for the module at its level of the resource hierarchy.
963
+ Possible values are: `ENABLEMENT_STATE_UNSPECIFIED`, `ENABLED`, `DISABLED`.
964
+ """
965
+ return pulumi.get(self, "module_enablement_state")
966
+
967
+ @module_enablement_state.setter
968
+ def module_enablement_state(self, value: Optional[pulumi.Input[str]]):
969
+ pulumi.set(self, "module_enablement_state", value)
970
+
971
+
972
+ @pulumi.input_type
973
+ class PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigArgs:
974
+ def __init__(__self__, *,
975
+ predicate: pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigPredicateArgs'],
976
+ resource_selector: pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigResourceSelectorArgs'],
977
+ severity: pulumi.Input[str],
978
+ custom_output: Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputArgs']] = None,
979
+ description: Optional[pulumi.Input[str]] = None,
980
+ recommendation: Optional[pulumi.Input[str]] = None):
981
+ """
982
+ :param pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigPredicateArgs'] predicate: The CEL expression to evaluate to produce findings.When the expression
983
+ evaluates to true against a resource, a finding is generated.
984
+ Structure is documented below.
985
+ :param pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigResourceSelectorArgs'] resource_selector: The resource types that the custom module operates on. Each custom module
986
+ can specify up to 5 resource types.
987
+ Structure is documented below.
988
+ :param pulumi.Input[str] severity: The severity to assign to findings generated by the module.
989
+ Possible values are: `SEVERITY_UNSPECIFIED`, `CRITICAL`, `HIGH`, `MEDIUM`, `LOW`.
990
+ :param pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputArgs'] custom_output: Custom output properties. A set of optional name-value pairs that define custom source properties to
991
+ return with each finding that is generated by the custom module. The custom
992
+ source properties that are defined here are included in the finding JSON
993
+ under `sourceProperties`.
994
+ Structure is documented below.
995
+ :param pulumi.Input[str] description: Text that describes the vulnerability or misconfiguration that the custom
996
+ module detects.
997
+ :param pulumi.Input[str] recommendation: An explanation of the recommended steps that security teams can take to
998
+ resolve the detected issue
999
+ """
1000
+ pulumi.set(__self__, "predicate", predicate)
1001
+ pulumi.set(__self__, "resource_selector", resource_selector)
1002
+ pulumi.set(__self__, "severity", severity)
1003
+ if custom_output is not None:
1004
+ pulumi.set(__self__, "custom_output", custom_output)
1005
+ if description is not None:
1006
+ pulumi.set(__self__, "description", description)
1007
+ if recommendation is not None:
1008
+ pulumi.set(__self__, "recommendation", recommendation)
1009
+
1010
+ @property
1011
+ @pulumi.getter
1012
+ def predicate(self) -> pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigPredicateArgs']:
1013
+ """
1014
+ The CEL expression to evaluate to produce findings.When the expression
1015
+ evaluates to true against a resource, a finding is generated.
1016
+ Structure is documented below.
1017
+ """
1018
+ return pulumi.get(self, "predicate")
1019
+
1020
+ @predicate.setter
1021
+ def predicate(self, value: pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigPredicateArgs']):
1022
+ pulumi.set(self, "predicate", value)
1023
+
1024
+ @property
1025
+ @pulumi.getter(name="resourceSelector")
1026
+ def resource_selector(self) -> pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigResourceSelectorArgs']:
1027
+ """
1028
+ The resource types that the custom module operates on. Each custom module
1029
+ can specify up to 5 resource types.
1030
+ Structure is documented below.
1031
+ """
1032
+ return pulumi.get(self, "resource_selector")
1033
+
1034
+ @resource_selector.setter
1035
+ def resource_selector(self, value: pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigResourceSelectorArgs']):
1036
+ pulumi.set(self, "resource_selector", value)
1037
+
1038
+ @property
1039
+ @pulumi.getter
1040
+ def severity(self) -> pulumi.Input[str]:
1041
+ """
1042
+ The severity to assign to findings generated by the module.
1043
+ Possible values are: `SEVERITY_UNSPECIFIED`, `CRITICAL`, `HIGH`, `MEDIUM`, `LOW`.
1044
+ """
1045
+ return pulumi.get(self, "severity")
1046
+
1047
+ @severity.setter
1048
+ def severity(self, value: pulumi.Input[str]):
1049
+ pulumi.set(self, "severity", value)
1050
+
1051
+ @property
1052
+ @pulumi.getter(name="customOutput")
1053
+ def custom_output(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputArgs']]:
1054
+ """
1055
+ Custom output properties. A set of optional name-value pairs that define custom source properties to
1056
+ return with each finding that is generated by the custom module. The custom
1057
+ source properties that are defined here are included in the finding JSON
1058
+ under `sourceProperties`.
1059
+ Structure is documented below.
1060
+ """
1061
+ return pulumi.get(self, "custom_output")
1062
+
1063
+ @custom_output.setter
1064
+ def custom_output(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputArgs']]):
1065
+ pulumi.set(self, "custom_output", value)
1066
+
1067
+ @property
1068
+ @pulumi.getter
1069
+ def description(self) -> Optional[pulumi.Input[str]]:
1070
+ """
1071
+ Text that describes the vulnerability or misconfiguration that the custom
1072
+ module detects.
1073
+ """
1074
+ return pulumi.get(self, "description")
1075
+
1076
+ @description.setter
1077
+ def description(self, value: Optional[pulumi.Input[str]]):
1078
+ pulumi.set(self, "description", value)
1079
+
1080
+ @property
1081
+ @pulumi.getter
1082
+ def recommendation(self) -> Optional[pulumi.Input[str]]:
1083
+ """
1084
+ An explanation of the recommended steps that security teams can take to
1085
+ resolve the detected issue
1086
+ """
1087
+ return pulumi.get(self, "recommendation")
1088
+
1089
+ @recommendation.setter
1090
+ def recommendation(self, value: Optional[pulumi.Input[str]]):
1091
+ pulumi.set(self, "recommendation", value)
1092
+
1093
+
1094
+ @pulumi.input_type
1095
+ class PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputArgs:
1096
+ def __init__(__self__, *,
1097
+ properties: Optional[pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyArgs']]]] = None):
1098
+ """
1099
+ :param pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyArgs']]] properties: A list of custom output properties to add to the finding.
1100
+ Structure is documented below.
1101
+ """
1102
+ if properties is not None:
1103
+ pulumi.set(__self__, "properties", properties)
1104
+
1105
+ @property
1106
+ @pulumi.getter
1107
+ def properties(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyArgs']]]]:
1108
+ """
1109
+ A list of custom output properties to add to the finding.
1110
+ Structure is documented below.
1111
+ """
1112
+ return pulumi.get(self, "properties")
1113
+
1114
+ @properties.setter
1115
+ def properties(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyArgs']]]]):
1116
+ pulumi.set(self, "properties", value)
1117
+
1118
+
1119
+ @pulumi.input_type
1120
+ class PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyArgs:
1121
+ def __init__(__self__, *,
1122
+ name: pulumi.Input[str],
1123
+ value_expression: Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyValueExpressionArgs']] = None):
1124
+ """
1125
+ :param pulumi.Input[str] name: Name of the property for the custom output.
1126
+ :param pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyValueExpressionArgs'] value_expression: The CEL expression for the custom output. A resource property can be
1127
+ specified to return the value of the property or a text string enclosed
1128
+ in quotation marks.
1129
+ Structure is documented below.
1130
+ """
1131
+ pulumi.set(__self__, "name", name)
1132
+ if value_expression is not None:
1133
+ pulumi.set(__self__, "value_expression", value_expression)
1134
+
1135
+ @property
1136
+ @pulumi.getter
1137
+ def name(self) -> pulumi.Input[str]:
1138
+ """
1139
+ Name of the property for the custom output.
1140
+ """
1141
+ return pulumi.get(self, "name")
1142
+
1143
+ @name.setter
1144
+ def name(self, value: pulumi.Input[str]):
1145
+ pulumi.set(self, "name", value)
1146
+
1147
+ @property
1148
+ @pulumi.getter(name="valueExpression")
1149
+ def value_expression(self) -> Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyValueExpressionArgs']]:
1150
+ """
1151
+ The CEL expression for the custom output. A resource property can be
1152
+ specified to return the value of the property or a text string enclosed
1153
+ in quotation marks.
1154
+ Structure is documented below.
1155
+ """
1156
+ return pulumi.get(self, "value_expression")
1157
+
1158
+ @value_expression.setter
1159
+ def value_expression(self, value: Optional[pulumi.Input['PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyValueExpressionArgs']]):
1160
+ pulumi.set(self, "value_expression", value)
1161
+
1162
+
1163
+ @pulumi.input_type
1164
+ class PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigCustomOutputPropertyValueExpressionArgs:
1165
+ def __init__(__self__, *,
1166
+ expression: pulumi.Input[str],
1167
+ description: Optional[pulumi.Input[str]] = None,
1168
+ location: Optional[pulumi.Input[str]] = None,
1169
+ title: Optional[pulumi.Input[str]] = None):
1170
+ """
1171
+ :param pulumi.Input[str] expression: Textual representation of an expression in Common Expression Language syntax.
1172
+ :param pulumi.Input[str] description: Description of the expression
1173
+ :param pulumi.Input[str] location: String indicating the location of the expression for error reporting, e.g. a file name and a position in the file
1174
+ :param pulumi.Input[str] title: Title for the expression, i.e. a short string describing its purpose.
1175
+ """
1176
+ pulumi.set(__self__, "expression", expression)
1177
+ if description is not None:
1178
+ pulumi.set(__self__, "description", description)
1179
+ if location is not None:
1180
+ pulumi.set(__self__, "location", location)
1181
+ if title is not None:
1182
+ pulumi.set(__self__, "title", title)
1183
+
1184
+ @property
1185
+ @pulumi.getter
1186
+ def expression(self) -> pulumi.Input[str]:
1187
+ """
1188
+ Textual representation of an expression in Common Expression Language syntax.
1189
+ """
1190
+ return pulumi.get(self, "expression")
1191
+
1192
+ @expression.setter
1193
+ def expression(self, value: pulumi.Input[str]):
1194
+ pulumi.set(self, "expression", value)
1195
+
1196
+ @property
1197
+ @pulumi.getter
1198
+ def description(self) -> Optional[pulumi.Input[str]]:
1199
+ """
1200
+ Description of the expression
1201
+ """
1202
+ return pulumi.get(self, "description")
1203
+
1204
+ @description.setter
1205
+ def description(self, value: Optional[pulumi.Input[str]]):
1206
+ pulumi.set(self, "description", value)
1207
+
1208
+ @property
1209
+ @pulumi.getter
1210
+ def location(self) -> Optional[pulumi.Input[str]]:
1211
+ """
1212
+ String indicating the location of the expression for error reporting, e.g. a file name and a position in the file
1213
+ """
1214
+ return pulumi.get(self, "location")
1215
+
1216
+ @location.setter
1217
+ def location(self, value: Optional[pulumi.Input[str]]):
1218
+ pulumi.set(self, "location", value)
1219
+
1220
+ @property
1221
+ @pulumi.getter
1222
+ def title(self) -> Optional[pulumi.Input[str]]:
1223
+ """
1224
+ Title for the expression, i.e. a short string describing its purpose.
1225
+ """
1226
+ return pulumi.get(self, "title")
1227
+
1228
+ @title.setter
1229
+ def title(self, value: Optional[pulumi.Input[str]]):
1230
+ pulumi.set(self, "title", value)
1231
+
1232
+
1233
+ @pulumi.input_type
1234
+ class PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigPredicateArgs:
1235
+ def __init__(__self__, *,
1236
+ expression: pulumi.Input[str],
1237
+ description: Optional[pulumi.Input[str]] = None,
1238
+ location: Optional[pulumi.Input[str]] = None,
1239
+ title: Optional[pulumi.Input[str]] = None):
1240
+ """
1241
+ :param pulumi.Input[str] expression: Textual representation of an expression in Common Expression Language syntax.
1242
+ :param pulumi.Input[str] description: Description of the expression
1243
+ :param pulumi.Input[str] location: String indicating the location of the expression for error reporting, e.g. a file name and a position in the file
1244
+ :param pulumi.Input[str] title: Title for the expression, i.e. a short string describing its purpose.
1245
+ """
1246
+ pulumi.set(__self__, "expression", expression)
1247
+ if description is not None:
1248
+ pulumi.set(__self__, "description", description)
1249
+ if location is not None:
1250
+ pulumi.set(__self__, "location", location)
1251
+ if title is not None:
1252
+ pulumi.set(__self__, "title", title)
1253
+
1254
+ @property
1255
+ @pulumi.getter
1256
+ def expression(self) -> pulumi.Input[str]:
1257
+ """
1258
+ Textual representation of an expression in Common Expression Language syntax.
1259
+ """
1260
+ return pulumi.get(self, "expression")
1261
+
1262
+ @expression.setter
1263
+ def expression(self, value: pulumi.Input[str]):
1264
+ pulumi.set(self, "expression", value)
1265
+
1266
+ @property
1267
+ @pulumi.getter
1268
+ def description(self) -> Optional[pulumi.Input[str]]:
1269
+ """
1270
+ Description of the expression
1271
+ """
1272
+ return pulumi.get(self, "description")
1273
+
1274
+ @description.setter
1275
+ def description(self, value: Optional[pulumi.Input[str]]):
1276
+ pulumi.set(self, "description", value)
1277
+
1278
+ @property
1279
+ @pulumi.getter
1280
+ def location(self) -> Optional[pulumi.Input[str]]:
1281
+ """
1282
+ String indicating the location of the expression for error reporting, e.g. a file name and a position in the file
1283
+ """
1284
+ return pulumi.get(self, "location")
1285
+
1286
+ @location.setter
1287
+ def location(self, value: Optional[pulumi.Input[str]]):
1288
+ pulumi.set(self, "location", value)
1289
+
1290
+ @property
1291
+ @pulumi.getter
1292
+ def title(self) -> Optional[pulumi.Input[str]]:
1293
+ """
1294
+ Title for the expression, i.e. a short string describing its purpose.
1295
+ """
1296
+ return pulumi.get(self, "title")
1297
+
1298
+ @title.setter
1299
+ def title(self, value: Optional[pulumi.Input[str]]):
1300
+ pulumi.set(self, "title", value)
1301
+
1302
+
1303
+ @pulumi.input_type
1304
+ class PosturePolicySetPolicyConstraintSecurityHealthAnalyticsCustomModuleConfigResourceSelectorArgs:
1305
+ def __init__(__self__, *,
1306
+ resource_types: pulumi.Input[Sequence[pulumi.Input[str]]]):
1307
+ """
1308
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] resource_types: The resource types to run the detector on.
1309
+ """
1310
+ pulumi.set(__self__, "resource_types", resource_types)
1311
+
1312
+ @property
1313
+ @pulumi.getter(name="resourceTypes")
1314
+ def resource_types(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
1315
+ """
1316
+ The resource types to run the detector on.
1317
+ """
1318
+ return pulumi.get(self, "resource_types")
1319
+
1320
+ @resource_types.setter
1321
+ def resource_types(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
1322
+ pulumi.set(self, "resource_types", value)
1323
+
1324
+
1325
+ @pulumi.input_type
1326
+ class PosturePolicySetPolicyConstraintSecurityHealthAnalyticsModuleArgs:
1327
+ def __init__(__self__, *,
1328
+ module_name: pulumi.Input[str],
1329
+ module_enablement_state: Optional[pulumi.Input[str]] = None):
1330
+ """
1331
+ :param pulumi.Input[str] module_name: The name of the module eg: BIGQUERY_TABLE_CMEK_DISABLED.
1332
+ :param pulumi.Input[str] module_enablement_state: The state of enablement for the module at its level of the resource hierarchy.
1333
+ Possible values are: `ENABLEMENT_STATE_UNSPECIFIED`, `ENABLED`, `DISABLED`.
1334
+ """
1335
+ pulumi.set(__self__, "module_name", module_name)
1336
+ if module_enablement_state is not None:
1337
+ pulumi.set(__self__, "module_enablement_state", module_enablement_state)
1338
+
1339
+ @property
1340
+ @pulumi.getter(name="moduleName")
1341
+ def module_name(self) -> pulumi.Input[str]:
1342
+ """
1343
+ The name of the module eg: BIGQUERY_TABLE_CMEK_DISABLED.
1344
+ """
1345
+ return pulumi.get(self, "module_name")
1346
+
1347
+ @module_name.setter
1348
+ def module_name(self, value: pulumi.Input[str]):
1349
+ pulumi.set(self, "module_name", value)
1350
+
1351
+ @property
1352
+ @pulumi.getter(name="moduleEnablementState")
1353
+ def module_enablement_state(self) -> Optional[pulumi.Input[str]]:
1354
+ """
1355
+ The state of enablement for the module at its level of the resource hierarchy.
1356
+ Possible values are: `ENABLEMENT_STATE_UNSPECIFIED`, `ENABLED`, `DISABLED`.
1357
+ """
1358
+ return pulumi.get(self, "module_enablement_state")
1359
+
1360
+ @module_enablement_state.setter
1361
+ def module_enablement_state(self, value: Optional[pulumi.Input[str]]):
1362
+ pulumi.set(self, "module_enablement_state", value)
1363
+
1364
+