pulumi-gcp 8.7.0a1730183903__py3-none-any.whl → 8.8.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. pulumi_gcp/__init__.py +78 -0
  2. pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +4 -4
  3. pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +4 -4
  4. pulumi_gcp/accesscontextmanager/access_policy_iam_policy.py +4 -4
  5. pulumi_gcp/accesscontextmanager/service_perimeter.py +2 -0
  6. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +4 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +4 -0
  8. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +4 -0
  9. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +4 -0
  10. pulumi_gcp/accesscontextmanager/service_perimeters.py +2 -0
  11. pulumi_gcp/apigateway/api_config_iam_binding.py +2 -2
  12. pulumi_gcp/apigateway/api_config_iam_member.py +2 -2
  13. pulumi_gcp/apigateway/api_config_iam_policy.py +2 -2
  14. pulumi_gcp/apigateway/api_iam_binding.py +2 -2
  15. pulumi_gcp/apigateway/api_iam_member.py +2 -2
  16. pulumi_gcp/apigateway/api_iam_policy.py +2 -2
  17. pulumi_gcp/apigateway/gateway_iam_binding.py +2 -2
  18. pulumi_gcp/apigateway/gateway_iam_member.py +2 -2
  19. pulumi_gcp/apigateway/gateway_iam_policy.py +2 -2
  20. pulumi_gcp/apigee/__init__.py +2 -0
  21. pulumi_gcp/apigee/_inputs.py +108 -0
  22. pulumi_gcp/apigee/app_group.py +811 -0
  23. pulumi_gcp/apigee/developer.py +757 -0
  24. pulumi_gcp/apigee/environment_iam_binding.py +4 -4
  25. pulumi_gcp/apigee/environment_iam_member.py +4 -4
  26. pulumi_gcp/apigee/environment_iam_policy.py +4 -4
  27. pulumi_gcp/apigee/outputs.py +64 -0
  28. pulumi_gcp/appengine/engine_split_traffic.py +4 -4
  29. pulumi_gcp/apphub/_inputs.py +6 -3
  30. pulumi_gcp/apphub/application.py +30 -4
  31. pulumi_gcp/apphub/outputs.py +8 -4
  32. pulumi_gcp/artifactregistry/get_docker_image.py +40 -0
  33. pulumi_gcp/artifactregistry/repository_iam_binding.py +2 -2
  34. pulumi_gcp/artifactregistry/repository_iam_member.py +2 -2
  35. pulumi_gcp/artifactregistry/repository_iam_policy.py +2 -2
  36. pulumi_gcp/assuredworkloads/_inputs.py +34 -0
  37. pulumi_gcp/assuredworkloads/outputs.py +37 -0
  38. pulumi_gcp/assuredworkloads/workload.py +56 -3
  39. pulumi_gcp/backupdisasterrecovery/_inputs.py +0 -6
  40. pulumi_gcp/backupdisasterrecovery/management_server.py +80 -34
  41. pulumi_gcp/backupdisasterrecovery/outputs.py +0 -4
  42. pulumi_gcp/biglake/table.py +12 -12
  43. pulumi_gcp/bigquery/_inputs.py +60 -0
  44. pulumi_gcp/bigquery/connection.py +14 -14
  45. pulumi_gcp/bigquery/connection_iam_binding.py +2 -2
  46. pulumi_gcp/bigquery/connection_iam_member.py +2 -2
  47. pulumi_gcp/bigquery/connection_iam_policy.py +2 -2
  48. pulumi_gcp/bigquery/dataset.py +99 -2
  49. pulumi_gcp/bigquery/dataset_access.py +2 -2
  50. pulumi_gcp/bigquery/dataset_iam_binding.py +53 -0
  51. pulumi_gcp/bigquery/dataset_iam_member.py +53 -0
  52. pulumi_gcp/bigquery/dataset_iam_policy.py +32 -0
  53. pulumi_gcp/bigquery/get_dataset.py +12 -1
  54. pulumi_gcp/bigquery/iam_binding.py +2 -2
  55. pulumi_gcp/bigquery/iam_member.py +2 -2
  56. pulumi_gcp/bigquery/iam_policy.py +2 -2
  57. pulumi_gcp/bigquery/job.py +6 -6
  58. pulumi_gcp/bigquery/outputs.py +87 -0
  59. pulumi_gcp/bigquery/routine.py +6 -6
  60. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +2 -2
  61. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +2 -2
  62. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +2 -2
  63. pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +2 -2
  64. pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +2 -2
  65. pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +2 -2
  66. pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +2 -2
  67. pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +2 -2
  68. pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +2 -2
  69. pulumi_gcp/binaryauthorization/attestor_iam_binding.py +2 -2
  70. pulumi_gcp/binaryauthorization/attestor_iam_member.py +2 -2
  71. pulumi_gcp/binaryauthorization/attestor_iam_policy.py +2 -2
  72. pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +2 -2
  73. pulumi_gcp/certificateauthority/ca_pool_iam_member.py +2 -2
  74. pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +2 -2
  75. pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +2 -2
  76. pulumi_gcp/certificateauthority/certificate_template_iam_member.py +2 -2
  77. pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +2 -2
  78. pulumi_gcp/cloudbuild/trigger.py +18 -18
  79. pulumi_gcp/cloudbuildv2/connection_iam_binding.py +2 -2
  80. pulumi_gcp/cloudbuildv2/connection_iam_member.py +2 -2
  81. pulumi_gcp/cloudbuildv2/connection_iam_policy.py +2 -2
  82. pulumi_gcp/clouddeploy/delivery_pipeline.py +10 -10
  83. pulumi_gcp/cloudfunctions/function_iam_binding.py +2 -2
  84. pulumi_gcp/cloudfunctions/function_iam_member.py +2 -2
  85. pulumi_gcp/cloudfunctions/function_iam_policy.py +2 -2
  86. pulumi_gcp/cloudfunctionsv2/function.py +22 -22
  87. pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +2 -2
  88. pulumi_gcp/cloudfunctionsv2/function_iam_member.py +2 -2
  89. pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +2 -2
  90. pulumi_gcp/cloudrun/iam_binding.py +2 -2
  91. pulumi_gcp/cloudrun/iam_member.py +2 -2
  92. pulumi_gcp/cloudrun/iam_policy.py +2 -2
  93. pulumi_gcp/cloudrun/service.py +24 -24
  94. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  95. pulumi_gcp/cloudrunv2/job_iam_binding.py +2 -2
  96. pulumi_gcp/cloudrunv2/job_iam_member.py +2 -2
  97. pulumi_gcp/cloudrunv2/job_iam_policy.py +2 -2
  98. pulumi_gcp/cloudrunv2/service.py +94 -2
  99. pulumi_gcp/cloudrunv2/service_iam_binding.py +2 -2
  100. pulumi_gcp/cloudrunv2/service_iam_member.py +2 -2
  101. pulumi_gcp/cloudrunv2/service_iam_policy.py +2 -2
  102. pulumi_gcp/cloudscheduler/job.py +4 -4
  103. pulumi_gcp/cloudtasks/queue_iam_binding.py +2 -2
  104. pulumi_gcp/cloudtasks/queue_iam_member.py +2 -2
  105. pulumi_gcp/cloudtasks/queue_iam_policy.py +2 -2
  106. pulumi_gcp/compute/__init__.py +1 -0
  107. pulumi_gcp/compute/_inputs.py +396 -166
  108. pulumi_gcp/compute/backend_bucket_iam_binding.py +2 -2
  109. pulumi_gcp/compute/backend_bucket_iam_member.py +2 -2
  110. pulumi_gcp/compute/backend_bucket_iam_policy.py +2 -2
  111. pulumi_gcp/compute/backend_service.py +76 -0
  112. pulumi_gcp/compute/backend_service_iam_binding.py +2 -2
  113. pulumi_gcp/compute/backend_service_iam_member.py +2 -2
  114. pulumi_gcp/compute/backend_service_iam_policy.py +2 -2
  115. pulumi_gcp/compute/disk_iam_binding.py +2 -2
  116. pulumi_gcp/compute/disk_iam_member.py +2 -2
  117. pulumi_gcp/compute/disk_iam_policy.py +2 -2
  118. pulumi_gcp/compute/get_backend_service.py +12 -1
  119. pulumi_gcp/compute/get_instance.py +29 -1
  120. pulumi_gcp/compute/get_instance_guest_attributes.py +277 -0
  121. pulumi_gcp/compute/get_instance_template.py +29 -1
  122. pulumi_gcp/compute/get_region_instance_group_manager.py +0 -18
  123. pulumi_gcp/compute/get_region_instance_template.py +29 -1
  124. pulumi_gcp/compute/image.py +76 -22
  125. pulumi_gcp/compute/image_iam_binding.py +2 -2
  126. pulumi_gcp/compute/image_iam_member.py +2 -2
  127. pulumi_gcp/compute/image_iam_policy.py +2 -2
  128. pulumi_gcp/compute/instance.py +89 -0
  129. pulumi_gcp/compute/instance_from_machine_image.py +82 -0
  130. pulumi_gcp/compute/instance_from_template.py +82 -0
  131. pulumi_gcp/compute/instance_iam_binding.py +2 -2
  132. pulumi_gcp/compute/instance_iam_member.py +2 -2
  133. pulumi_gcp/compute/instance_iam_policy.py +2 -2
  134. pulumi_gcp/compute/instance_template.py +75 -0
  135. pulumi_gcp/compute/machine_image_iam_binding.py +2 -2
  136. pulumi_gcp/compute/machine_image_iam_member.py +2 -2
  137. pulumi_gcp/compute/machine_image_iam_policy.py +2 -2
  138. pulumi_gcp/compute/network_firewall_policy_association.py +76 -50
  139. pulumi_gcp/compute/network_firewall_policy_rule.py +149 -103
  140. pulumi_gcp/compute/outputs.py +367 -110
  141. pulumi_gcp/compute/region_backend_service.py +94 -0
  142. pulumi_gcp/compute/region_backend_service_iam_binding.py +2 -2
  143. pulumi_gcp/compute/region_backend_service_iam_member.py +2 -2
  144. pulumi_gcp/compute/region_backend_service_iam_policy.py +2 -2
  145. pulumi_gcp/compute/region_disk_iam_binding.py +2 -2
  146. pulumi_gcp/compute/region_disk_iam_member.py +2 -2
  147. pulumi_gcp/compute/region_disk_iam_policy.py +2 -2
  148. pulumi_gcp/compute/region_instance_template.py +75 -0
  149. pulumi_gcp/compute/region_network_endpoint_group.py +6 -4
  150. pulumi_gcp/compute/region_network_firewall_policy_association.py +104 -54
  151. pulumi_gcp/compute/region_network_firewall_policy_rule.py +160 -107
  152. pulumi_gcp/compute/region_security_policy_rule.py +74 -0
  153. pulumi_gcp/compute/security_policy_rule.py +111 -13
  154. pulumi_gcp/compute/snapshot_iam_binding.py +2 -2
  155. pulumi_gcp/compute/snapshot_iam_member.py +2 -2
  156. pulumi_gcp/compute/snapshot_iam_policy.py +2 -2
  157. pulumi_gcp/compute/subnetwork_iam_binding.py +2 -2
  158. pulumi_gcp/compute/subnetwork_iam_member.py +2 -2
  159. pulumi_gcp/compute/subnetwork_iam_policy.py +2 -2
  160. pulumi_gcp/compute/url_map.py +10 -10
  161. pulumi_gcp/config/__init__.pyi +4 -0
  162. pulumi_gcp/config/vars.py +8 -0
  163. pulumi_gcp/container/attached_cluster.py +9 -6
  164. pulumi_gcp/container/aws_node_pool.py +12 -12
  165. pulumi_gcp/container/outputs.py +2 -2
  166. pulumi_gcp/containeranalysis/note_iam_binding.py +2 -2
  167. pulumi_gcp/containeranalysis/note_iam_member.py +2 -2
  168. pulumi_gcp/containeranalysis/note_iam_policy.py +2 -2
  169. pulumi_gcp/datacatalog/entry_group_iam_binding.py +2 -2
  170. pulumi_gcp/datacatalog/entry_group_iam_member.py +2 -2
  171. pulumi_gcp/datacatalog/entry_group_iam_policy.py +2 -2
  172. pulumi_gcp/datacatalog/policy_tag_iam_binding.py +4 -4
  173. pulumi_gcp/datacatalog/policy_tag_iam_member.py +4 -4
  174. pulumi_gcp/datacatalog/policy_tag_iam_policy.py +4 -4
  175. pulumi_gcp/datacatalog/tag_template_iam_binding.py +2 -2
  176. pulumi_gcp/datacatalog/tag_template_iam_member.py +2 -2
  177. pulumi_gcp/datacatalog/tag_template_iam_policy.py +2 -2
  178. pulumi_gcp/datacatalog/taxonomy_iam_binding.py +2 -2
  179. pulumi_gcp/datacatalog/taxonomy_iam_member.py +2 -2
  180. pulumi_gcp/datacatalog/taxonomy_iam_policy.py +2 -2
  181. pulumi_gcp/dataplex/aspect_type_iam_binding.py +2 -2
  182. pulumi_gcp/dataplex/aspect_type_iam_member.py +2 -2
  183. pulumi_gcp/dataplex/aspect_type_iam_policy.py +2 -2
  184. pulumi_gcp/dataplex/asset_iam_binding.py +2 -2
  185. pulumi_gcp/dataplex/asset_iam_member.py +2 -2
  186. pulumi_gcp/dataplex/asset_iam_policy.py +2 -2
  187. pulumi_gcp/dataplex/datascan_iam_binding.py +2 -2
  188. pulumi_gcp/dataplex/datascan_iam_member.py +2 -2
  189. pulumi_gcp/dataplex/datascan_iam_policy.py +2 -2
  190. pulumi_gcp/dataplex/entry_group_iam_binding.py +2 -2
  191. pulumi_gcp/dataplex/entry_group_iam_member.py +2 -2
  192. pulumi_gcp/dataplex/entry_group_iam_policy.py +2 -2
  193. pulumi_gcp/dataplex/entry_type_iam_binding.py +2 -2
  194. pulumi_gcp/dataplex/entry_type_iam_member.py +2 -2
  195. pulumi_gcp/dataplex/entry_type_iam_policy.py +2 -2
  196. pulumi_gcp/dataplex/lake_iam_binding.py +2 -2
  197. pulumi_gcp/dataplex/lake_iam_member.py +2 -2
  198. pulumi_gcp/dataplex/lake_iam_policy.py +2 -2
  199. pulumi_gcp/dataplex/task.py +4 -4
  200. pulumi_gcp/dataplex/task_iam_binding.py +2 -2
  201. pulumi_gcp/dataplex/task_iam_member.py +2 -2
  202. pulumi_gcp/dataplex/task_iam_policy.py +2 -2
  203. pulumi_gcp/dataplex/zone_iam_binding.py +2 -2
  204. pulumi_gcp/dataplex/zone_iam_member.py +2 -2
  205. pulumi_gcp/dataplex/zone_iam_policy.py +2 -2
  206. pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +2 -2
  207. pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +2 -2
  208. pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +2 -2
  209. pulumi_gcp/dataproc/batch.py +24 -24
  210. pulumi_gcp/dataproc/cluster.py +2 -2
  211. pulumi_gcp/dataproc/job.py +4 -4
  212. pulumi_gcp/dataproc/metastore_federation_iam_binding.py +2 -2
  213. pulumi_gcp/dataproc/metastore_federation_iam_member.py +2 -2
  214. pulumi_gcp/dataproc/metastore_federation_iam_policy.py +2 -2
  215. pulumi_gcp/dataproc/metastore_service_iam_binding.py +2 -2
  216. pulumi_gcp/dataproc/metastore_service_iam_member.py +2 -2
  217. pulumi_gcp/dataproc/metastore_service_iam_policy.py +2 -2
  218. pulumi_gcp/datastream/stream.py +2 -2
  219. pulumi_gcp/diagflow/_inputs.py +472 -2
  220. pulumi_gcp/diagflow/cx_agent.py +64 -4
  221. pulumi_gcp/diagflow/cx_flow.py +34 -4
  222. pulumi_gcp/diagflow/cx_page.py +10 -10
  223. pulumi_gcp/diagflow/outputs.py +378 -2
  224. pulumi_gcp/dns/dns_managed_zone_iam_binding.py +2 -2
  225. pulumi_gcp/dns/dns_managed_zone_iam_member.py +2 -2
  226. pulumi_gcp/dns/dns_managed_zone_iam_policy.py +2 -2
  227. pulumi_gcp/endpoints/consumers_iam_binding.py +2 -2
  228. pulumi_gcp/endpoints/consumers_iam_member.py +2 -2
  229. pulumi_gcp/endpoints/consumers_iam_policy.py +2 -2
  230. pulumi_gcp/endpoints/service_iam_binding.py +4 -4
  231. pulumi_gcp/endpoints/service_iam_member.py +4 -4
  232. pulumi_gcp/endpoints/service_iam_policy.py +4 -4
  233. pulumi_gcp/firebase/extensions_instance.py +24 -24
  234. pulumi_gcp/gkebackup/backup_plan_iam_binding.py +2 -2
  235. pulumi_gcp/gkebackup/backup_plan_iam_member.py +2 -2
  236. pulumi_gcp/gkebackup/backup_plan_iam_policy.py +2 -2
  237. pulumi_gcp/gkebackup/restore_plan.py +18 -18
  238. pulumi_gcp/gkebackup/restore_plan_iam_binding.py +2 -2
  239. pulumi_gcp/gkebackup/restore_plan_iam_member.py +2 -2
  240. pulumi_gcp/gkebackup/restore_plan_iam_policy.py +2 -2
  241. pulumi_gcp/gkehub/_inputs.py +21 -21
  242. pulumi_gcp/gkehub/feature.py +2 -4
  243. pulumi_gcp/gkehub/feature_iam_binding.py +2 -2
  244. pulumi_gcp/gkehub/feature_iam_member.py +2 -2
  245. pulumi_gcp/gkehub/feature_iam_policy.py +2 -2
  246. pulumi_gcp/gkehub/membership_iam_binding.py +2 -2
  247. pulumi_gcp/gkehub/membership_iam_member.py +2 -2
  248. pulumi_gcp/gkehub/membership_iam_policy.py +2 -2
  249. pulumi_gcp/gkehub/outputs.py +13 -13
  250. pulumi_gcp/gkehub/scope_iam_binding.py +2 -2
  251. pulumi_gcp/gkehub/scope_iam_member.py +2 -2
  252. pulumi_gcp/gkehub/scope_iam_policy.py +2 -2
  253. pulumi_gcp/healthcare/consent_store_iam_binding.py +4 -4
  254. pulumi_gcp/healthcare/consent_store_iam_member.py +4 -4
  255. pulumi_gcp/healthcare/consent_store_iam_policy.py +4 -4
  256. pulumi_gcp/iam/workload_identity_pool_provider.py +56 -0
  257. pulumi_gcp/iap/__init__.py +1 -0
  258. pulumi_gcp/iap/_inputs.py +1002 -0
  259. pulumi_gcp/iap/app_engine_service_iam_binding.py +2 -2
  260. pulumi_gcp/iap/app_engine_service_iam_member.py +2 -2
  261. pulumi_gcp/iap/app_engine_service_iam_policy.py +2 -2
  262. pulumi_gcp/iap/app_engine_version_iam_binding.py +2 -2
  263. pulumi_gcp/iap/app_engine_version_iam_member.py +2 -2
  264. pulumi_gcp/iap/app_engine_version_iam_policy.py +2 -2
  265. pulumi_gcp/iap/outputs.py +827 -0
  266. pulumi_gcp/iap/settings.py +546 -0
  267. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +2 -2
  268. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +2 -2
  269. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +2 -2
  270. pulumi_gcp/iap/tunnel_iam_binding.py +2 -2
  271. pulumi_gcp/iap/tunnel_iam_member.py +2 -2
  272. pulumi_gcp/iap/tunnel_iam_policy.py +2 -2
  273. pulumi_gcp/iap/tunnel_instance_iam_binding.py +2 -2
  274. pulumi_gcp/iap/tunnel_instance_iam_member.py +2 -2
  275. pulumi_gcp/iap/tunnel_instance_iam_policy.py +2 -2
  276. pulumi_gcp/iap/web_backend_service_iam_binding.py +2 -2
  277. pulumi_gcp/iap/web_backend_service_iam_member.py +2 -2
  278. pulumi_gcp/iap/web_backend_service_iam_policy.py +2 -2
  279. pulumi_gcp/iap/web_iam_binding.py +2 -2
  280. pulumi_gcp/iap/web_iam_member.py +2 -2
  281. pulumi_gcp/iap/web_iam_policy.py +2 -2
  282. pulumi_gcp/iap/web_region_backend_service_iam_binding.py +2 -2
  283. pulumi_gcp/iap/web_region_backend_service_iam_member.py +2 -2
  284. pulumi_gcp/iap/web_region_backend_service_iam_policy.py +2 -2
  285. pulumi_gcp/iap/web_type_app_enging_iam_binding.py +2 -2
  286. pulumi_gcp/iap/web_type_app_enging_iam_member.py +2 -2
  287. pulumi_gcp/iap/web_type_app_enging_iam_policy.py +2 -2
  288. pulumi_gcp/iap/web_type_compute_iam_binding.py +2 -2
  289. pulumi_gcp/iap/web_type_compute_iam_member.py +2 -2
  290. pulumi_gcp/iap/web_type_compute_iam_policy.py +2 -2
  291. pulumi_gcp/identityplatform/config.py +2 -2
  292. pulumi_gcp/kms/ekm_connection_iam_binding.py +2 -2
  293. pulumi_gcp/kms/ekm_connection_iam_member.py +2 -2
  294. pulumi_gcp/kms/ekm_connection_iam_policy.py +2 -2
  295. pulumi_gcp/logging/log_view_iam_binding.py +4 -4
  296. pulumi_gcp/logging/log_view_iam_member.py +4 -4
  297. pulumi_gcp/logging/log_view_iam_policy.py +4 -4
  298. pulumi_gcp/looker/instance.py +104 -2
  299. pulumi_gcp/memorystore/_inputs.py +117 -4
  300. pulumi_gcp/memorystore/instance.py +105 -0
  301. pulumi_gcp/memorystore/outputs.py +80 -4
  302. pulumi_gcp/monitoring/_inputs.py +23 -0
  303. pulumi_gcp/monitoring/get_secret_version.py +22 -3
  304. pulumi_gcp/monitoring/outputs.py +16 -0
  305. pulumi_gcp/networkconnectivity/__init__.py +1 -0
  306. pulumi_gcp/networkconnectivity/_inputs.py +148 -0
  307. pulumi_gcp/networkconnectivity/group.py +764 -0
  308. pulumi_gcp/networkconnectivity/outputs.py +125 -0
  309. pulumi_gcp/networkconnectivity/spoke.py +144 -0
  310. pulumi_gcp/networksecurity/address_group_iam_binding.py +2 -2
  311. pulumi_gcp/networksecurity/address_group_iam_member.py +2 -2
  312. pulumi_gcp/networksecurity/address_group_iam_policy.py +2 -2
  313. pulumi_gcp/networksecurity/gateway_security_policy.py +7 -0
  314. pulumi_gcp/networksecurity/server_tls_policy.py +2 -2
  315. pulumi_gcp/networkservices/edge_cache_service.py +2 -2
  316. pulumi_gcp/networkservices/http_route.py +4 -4
  317. pulumi_gcp/notebooks/instance_iam_binding.py +2 -2
  318. pulumi_gcp/notebooks/instance_iam_member.py +2 -2
  319. pulumi_gcp/notebooks/instance_iam_policy.py +2 -2
  320. pulumi_gcp/notebooks/runtime_iam_binding.py +2 -2
  321. pulumi_gcp/notebooks/runtime_iam_member.py +2 -2
  322. pulumi_gcp/notebooks/runtime_iam_policy.py +2 -2
  323. pulumi_gcp/oracledatabase/__init__.py +20 -0
  324. pulumi_gcp/oracledatabase/_inputs.py +4745 -0
  325. pulumi_gcp/oracledatabase/autonomous_database.py +983 -0
  326. pulumi_gcp/oracledatabase/cloud_exadata_infrastructure.py +842 -0
  327. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +1086 -0
  328. pulumi_gcp/oracledatabase/get_autonomous_database.py +290 -0
  329. pulumi_gcp/oracledatabase/get_autonomous_databases.py +150 -0
  330. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +257 -0
  331. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructures.py +150 -0
  332. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +290 -0
  333. pulumi_gcp/oracledatabase/get_cloud_vm_clusters.py +150 -0
  334. pulumi_gcp/oracledatabase/get_db_nodes.py +245 -0
  335. pulumi_gcp/oracledatabase/get_db_servers.py +245 -0
  336. pulumi_gcp/oracledatabase/outputs.py +9304 -0
  337. pulumi_gcp/organizations/folder.py +7 -7
  338. pulumi_gcp/organizations/project.py +7 -7
  339. pulumi_gcp/orgpolicy/_inputs.py +3 -3
  340. pulumi_gcp/orgpolicy/outputs.py +2 -2
  341. pulumi_gcp/osconfig/os_policy_assignment.py +4 -4
  342. pulumi_gcp/privilegedaccessmanager/get_entitlement.py +46 -2
  343. pulumi_gcp/provider.py +40 -0
  344. pulumi_gcp/pubsub/schema_iam_binding.py +2 -2
  345. pulumi_gcp/pubsub/schema_iam_member.py +2 -2
  346. pulumi_gcp/pubsub/schema_iam_policy.py +2 -2
  347. pulumi_gcp/pubsub/subscription.py +18 -66
  348. pulumi_gcp/pubsub/topic_iam_binding.py +2 -2
  349. pulumi_gcp/pubsub/topic_iam_member.py +2 -2
  350. pulumi_gcp/pubsub/topic_iam_policy.py +2 -2
  351. pulumi_gcp/pulumi-plugin.json +1 -1
  352. pulumi_gcp/runtimeconfig/config_iam_binding.py +2 -2
  353. pulumi_gcp/runtimeconfig/config_iam_member.py +2 -2
  354. pulumi_gcp/runtimeconfig/config_iam_policy.py +2 -2
  355. pulumi_gcp/secretmanager/get_regional_secret_version.py +24 -5
  356. pulumi_gcp/secretmanager/get_regional_secret_version_access.py +24 -5
  357. pulumi_gcp/secretmanager/get_secret_version.py +22 -3
  358. pulumi_gcp/secretmanager/get_secret_version_access.py +22 -3
  359. pulumi_gcp/secretmanager/regional_secret.py +2 -2
  360. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +2 -2
  361. pulumi_gcp/secretmanager/regional_secret_iam_member.py +2 -2
  362. pulumi_gcp/secretmanager/regional_secret_iam_policy.py +2 -2
  363. pulumi_gcp/secretmanager/secret_iam_binding.py +2 -2
  364. pulumi_gcp/secretmanager/secret_iam_member.py +2 -2
  365. pulumi_gcp/secretmanager/secret_iam_policy.py +2 -2
  366. pulumi_gcp/securesourcemanager/repository_iam_binding.py +2 -2
  367. pulumi_gcp/securesourcemanager/repository_iam_member.py +2 -2
  368. pulumi_gcp/securesourcemanager/repository_iam_policy.py +2 -2
  369. pulumi_gcp/securitycenter/v2_organization_source_iam_binding.py +4 -4
  370. pulumi_gcp/securitycenter/v2_organization_source_iam_member.py +4 -4
  371. pulumi_gcp/securitycenter/v2_organization_source_iam_policy.py +4 -4
  372. pulumi_gcp/serviceaccount/__init__.py +1 -0
  373. pulumi_gcp/serviceaccount/get_account.py +15 -1
  374. pulumi_gcp/serviceaccount/get_s.py +132 -0
  375. pulumi_gcp/serviceaccount/outputs.py +89 -0
  376. pulumi_gcp/servicedirectory/namespace_iam_binding.py +4 -4
  377. pulumi_gcp/servicedirectory/namespace_iam_member.py +4 -4
  378. pulumi_gcp/servicedirectory/namespace_iam_policy.py +4 -4
  379. pulumi_gcp/servicedirectory/service_iam_binding.py +4 -4
  380. pulumi_gcp/servicedirectory/service_iam_member.py +4 -4
  381. pulumi_gcp/servicedirectory/service_iam_policy.py +4 -4
  382. pulumi_gcp/siteverification/get_token.py +0 -16
  383. pulumi_gcp/siteverification/owner.py +0 -16
  384. pulumi_gcp/sourcerepo/repository_iam_binding.py +2 -2
  385. pulumi_gcp/sourcerepo/repository_iam_member.py +2 -2
  386. pulumi_gcp/sourcerepo/repository_iam_policy.py +2 -2
  387. pulumi_gcp/spanner/_inputs.py +237 -17
  388. pulumi_gcp/spanner/outputs.py +307 -12
  389. pulumi_gcp/sql/_inputs.py +12 -9
  390. pulumi_gcp/sql/outputs.py +8 -6
  391. pulumi_gcp/sql/user.py +28 -21
  392. pulumi_gcp/storage/_inputs.py +33 -0
  393. pulumi_gcp/storage/bucket.py +47 -0
  394. pulumi_gcp/storage/bucket_iam_binding.py +2 -2
  395. pulumi_gcp/storage/bucket_iam_member.py +2 -2
  396. pulumi_gcp/storage/bucket_iam_policy.py +2 -2
  397. pulumi_gcp/storage/get_bucket.py +12 -1
  398. pulumi_gcp/storage/managed_folder_iam_binding.py +4 -4
  399. pulumi_gcp/storage/managed_folder_iam_member.py +4 -4
  400. pulumi_gcp/storage/managed_folder_iam_policy.py +4 -4
  401. pulumi_gcp/storage/outputs.py +38 -0
  402. pulumi_gcp/tags/tag_key_iam_binding.py +4 -4
  403. pulumi_gcp/tags/tag_key_iam_member.py +4 -4
  404. pulumi_gcp/tags/tag_key_iam_policy.py +4 -4
  405. pulumi_gcp/tags/tag_value_iam_binding.py +4 -4
  406. pulumi_gcp/tags/tag_value_iam_member.py +4 -4
  407. pulumi_gcp/tags/tag_value_iam_policy.py +4 -4
  408. pulumi_gcp/transcoder/__init__.py +11 -0
  409. pulumi_gcp/transcoder/_inputs.py +3991 -0
  410. pulumi_gcp/transcoder/job.py +2134 -0
  411. pulumi_gcp/transcoder/job_template.py +1524 -0
  412. pulumi_gcp/transcoder/outputs.py +2918 -0
  413. pulumi_gcp/vertex/ai_deployment_resource_pool.py +2 -2
  414. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_binding.py +2 -2
  415. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_member.py +2 -2
  416. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_policy.py +2 -2
  417. pulumi_gcp/vertex/ai_feature_store_iam_binding.py +2 -2
  418. pulumi_gcp/vertex/ai_feature_store_iam_member.py +2 -2
  419. pulumi_gcp/vertex/ai_feature_store_iam_policy.py +2 -2
  420. pulumi_gcp/vmwareengine/_inputs.py +912 -6
  421. pulumi_gcp/vmwareengine/cluster.py +100 -2
  422. pulumi_gcp/vmwareengine/get_cluster.py +12 -1
  423. pulumi_gcp/vmwareengine/outputs.py +1310 -49
  424. pulumi_gcp/vmwareengine/private_cloud.py +44 -0
  425. pulumi_gcp/workstations/_inputs.py +54 -0
  426. pulumi_gcp/workstations/outputs.py +32 -0
  427. pulumi_gcp/workstations/workstation_config.py +211 -6
  428. pulumi_gcp/workstations/workstation_config_iam_binding.py +2 -2
  429. pulumi_gcp/workstations/workstation_config_iam_member.py +2 -2
  430. pulumi_gcp/workstations/workstation_config_iam_policy.py +2 -2
  431. pulumi_gcp/workstations/workstation_iam_binding.py +2 -2
  432. pulumi_gcp/workstations/workstation_iam_member.py +2 -2
  433. pulumi_gcp/workstations/workstation_iam_policy.py +2 -2
  434. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.8.0.dist-info}/METADATA +1 -1
  435. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.8.0.dist-info}/RECORD +437 -412
  436. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.8.0.dist-info}/WHEEL +1 -1
  437. {pulumi_gcp-8.7.0a1730183903.dist-info → pulumi_gcp-8.8.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,811 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['AppGroupArgs', 'AppGroup']
20
+
21
+ @pulumi.input_type
22
+ class AppGroupArgs:
23
+ def __init__(__self__, *,
24
+ org_id: pulumi.Input[str],
25
+ attributes: Optional[pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]]] = None,
26
+ channel_id: Optional[pulumi.Input[str]] = None,
27
+ channel_uri: Optional[pulumi.Input[str]] = None,
28
+ display_name: Optional[pulumi.Input[str]] = None,
29
+ name: Optional[pulumi.Input[str]] = None,
30
+ status: Optional[pulumi.Input[str]] = None):
31
+ """
32
+ The set of arguments for constructing a AppGroup resource.
33
+ :param pulumi.Input[str] org_id: The Apigee Organization associated with the Apigee app group,
34
+ in the format `organizations/{{org_name}}`.
35
+
36
+
37
+ - - -
38
+ :param pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]] attributes: A list of attributes
39
+ Structure is documented below.
40
+ :param pulumi.Input[str] channel_id: Channel identifier identifies the owner maintaing this grouping.
41
+ :param pulumi.Input[str] channel_uri: A reference to the associated storefront/marketplace.
42
+ :param pulumi.Input[str] display_name: App group name displayed in the UI
43
+ :param pulumi.Input[str] name: Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._-$ %.
44
+ :param pulumi.Input[str] status: Valid values are active or inactive. Note that the status of the AppGroup should be updated via UpdateAppGroupRequest by setting the action as active or inactive.
45
+ Possible values are: `active`, `inactive`.
46
+ """
47
+ pulumi.set(__self__, "org_id", org_id)
48
+ if attributes is not None:
49
+ pulumi.set(__self__, "attributes", attributes)
50
+ if channel_id is not None:
51
+ pulumi.set(__self__, "channel_id", channel_id)
52
+ if channel_uri is not None:
53
+ pulumi.set(__self__, "channel_uri", channel_uri)
54
+ if display_name is not None:
55
+ pulumi.set(__self__, "display_name", display_name)
56
+ if name is not None:
57
+ pulumi.set(__self__, "name", name)
58
+ if status is not None:
59
+ pulumi.set(__self__, "status", status)
60
+
61
+ @property
62
+ @pulumi.getter(name="orgId")
63
+ def org_id(self) -> pulumi.Input[str]:
64
+ """
65
+ The Apigee Organization associated with the Apigee app group,
66
+ in the format `organizations/{{org_name}}`.
67
+
68
+
69
+ - - -
70
+ """
71
+ return pulumi.get(self, "org_id")
72
+
73
+ @org_id.setter
74
+ def org_id(self, value: pulumi.Input[str]):
75
+ pulumi.set(self, "org_id", value)
76
+
77
+ @property
78
+ @pulumi.getter
79
+ def attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]]]:
80
+ """
81
+ A list of attributes
82
+ Structure is documented below.
83
+ """
84
+ return pulumi.get(self, "attributes")
85
+
86
+ @attributes.setter
87
+ def attributes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]]]):
88
+ pulumi.set(self, "attributes", value)
89
+
90
+ @property
91
+ @pulumi.getter(name="channelId")
92
+ def channel_id(self) -> Optional[pulumi.Input[str]]:
93
+ """
94
+ Channel identifier identifies the owner maintaing this grouping.
95
+ """
96
+ return pulumi.get(self, "channel_id")
97
+
98
+ @channel_id.setter
99
+ def channel_id(self, value: Optional[pulumi.Input[str]]):
100
+ pulumi.set(self, "channel_id", value)
101
+
102
+ @property
103
+ @pulumi.getter(name="channelUri")
104
+ def channel_uri(self) -> Optional[pulumi.Input[str]]:
105
+ """
106
+ A reference to the associated storefront/marketplace.
107
+ """
108
+ return pulumi.get(self, "channel_uri")
109
+
110
+ @channel_uri.setter
111
+ def channel_uri(self, value: Optional[pulumi.Input[str]]):
112
+ pulumi.set(self, "channel_uri", value)
113
+
114
+ @property
115
+ @pulumi.getter(name="displayName")
116
+ def display_name(self) -> Optional[pulumi.Input[str]]:
117
+ """
118
+ App group name displayed in the UI
119
+ """
120
+ return pulumi.get(self, "display_name")
121
+
122
+ @display_name.setter
123
+ def display_name(self, value: Optional[pulumi.Input[str]]):
124
+ pulumi.set(self, "display_name", value)
125
+
126
+ @property
127
+ @pulumi.getter
128
+ def name(self) -> Optional[pulumi.Input[str]]:
129
+ """
130
+ Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._-$ %.
131
+ """
132
+ return pulumi.get(self, "name")
133
+
134
+ @name.setter
135
+ def name(self, value: Optional[pulumi.Input[str]]):
136
+ pulumi.set(self, "name", value)
137
+
138
+ @property
139
+ @pulumi.getter
140
+ def status(self) -> Optional[pulumi.Input[str]]:
141
+ """
142
+ Valid values are active or inactive. Note that the status of the AppGroup should be updated via UpdateAppGroupRequest by setting the action as active or inactive.
143
+ Possible values are: `active`, `inactive`.
144
+ """
145
+ return pulumi.get(self, "status")
146
+
147
+ @status.setter
148
+ def status(self, value: Optional[pulumi.Input[str]]):
149
+ pulumi.set(self, "status", value)
150
+
151
+
152
+ @pulumi.input_type
153
+ class _AppGroupState:
154
+ def __init__(__self__, *,
155
+ app_group_id: Optional[pulumi.Input[str]] = None,
156
+ attributes: Optional[pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]]] = None,
157
+ channel_id: Optional[pulumi.Input[str]] = None,
158
+ channel_uri: Optional[pulumi.Input[str]] = None,
159
+ created_at: Optional[pulumi.Input[str]] = None,
160
+ display_name: Optional[pulumi.Input[str]] = None,
161
+ last_modified_at: Optional[pulumi.Input[str]] = None,
162
+ name: Optional[pulumi.Input[str]] = None,
163
+ org_id: Optional[pulumi.Input[str]] = None,
164
+ organization: Optional[pulumi.Input[str]] = None,
165
+ status: Optional[pulumi.Input[str]] = None):
166
+ """
167
+ Input properties used for looking up and filtering AppGroup resources.
168
+ :param pulumi.Input[str] app_group_id: Internal identifier that cannot be edited
169
+ :param pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]] attributes: A list of attributes
170
+ Structure is documented below.
171
+ :param pulumi.Input[str] channel_id: Channel identifier identifies the owner maintaing this grouping.
172
+ :param pulumi.Input[str] channel_uri: A reference to the associated storefront/marketplace.
173
+ :param pulumi.Input[str] created_at: Created time as milliseconds since epoch.
174
+ :param pulumi.Input[str] display_name: App group name displayed in the UI
175
+ :param pulumi.Input[str] last_modified_at: Modified time as milliseconds since epoch.
176
+ :param pulumi.Input[str] name: Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._-$ %.
177
+ :param pulumi.Input[str] org_id: The Apigee Organization associated with the Apigee app group,
178
+ in the format `organizations/{{org_name}}`.
179
+
180
+
181
+ - - -
182
+ :param pulumi.Input[str] organization: App group name displayed in the UI
183
+ :param pulumi.Input[str] status: Valid values are active or inactive. Note that the status of the AppGroup should be updated via UpdateAppGroupRequest by setting the action as active or inactive.
184
+ Possible values are: `active`, `inactive`.
185
+ """
186
+ if app_group_id is not None:
187
+ pulumi.set(__self__, "app_group_id", app_group_id)
188
+ if attributes is not None:
189
+ pulumi.set(__self__, "attributes", attributes)
190
+ if channel_id is not None:
191
+ pulumi.set(__self__, "channel_id", channel_id)
192
+ if channel_uri is not None:
193
+ pulumi.set(__self__, "channel_uri", channel_uri)
194
+ if created_at is not None:
195
+ pulumi.set(__self__, "created_at", created_at)
196
+ if display_name is not None:
197
+ pulumi.set(__self__, "display_name", display_name)
198
+ if last_modified_at is not None:
199
+ pulumi.set(__self__, "last_modified_at", last_modified_at)
200
+ if name is not None:
201
+ pulumi.set(__self__, "name", name)
202
+ if org_id is not None:
203
+ pulumi.set(__self__, "org_id", org_id)
204
+ if organization is not None:
205
+ pulumi.set(__self__, "organization", organization)
206
+ if status is not None:
207
+ pulumi.set(__self__, "status", status)
208
+
209
+ @property
210
+ @pulumi.getter(name="appGroupId")
211
+ def app_group_id(self) -> Optional[pulumi.Input[str]]:
212
+ """
213
+ Internal identifier that cannot be edited
214
+ """
215
+ return pulumi.get(self, "app_group_id")
216
+
217
+ @app_group_id.setter
218
+ def app_group_id(self, value: Optional[pulumi.Input[str]]):
219
+ pulumi.set(self, "app_group_id", value)
220
+
221
+ @property
222
+ @pulumi.getter
223
+ def attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]]]:
224
+ """
225
+ A list of attributes
226
+ Structure is documented below.
227
+ """
228
+ return pulumi.get(self, "attributes")
229
+
230
+ @attributes.setter
231
+ def attributes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AppGroupAttributeArgs']]]]):
232
+ pulumi.set(self, "attributes", value)
233
+
234
+ @property
235
+ @pulumi.getter(name="channelId")
236
+ def channel_id(self) -> Optional[pulumi.Input[str]]:
237
+ """
238
+ Channel identifier identifies the owner maintaing this grouping.
239
+ """
240
+ return pulumi.get(self, "channel_id")
241
+
242
+ @channel_id.setter
243
+ def channel_id(self, value: Optional[pulumi.Input[str]]):
244
+ pulumi.set(self, "channel_id", value)
245
+
246
+ @property
247
+ @pulumi.getter(name="channelUri")
248
+ def channel_uri(self) -> Optional[pulumi.Input[str]]:
249
+ """
250
+ A reference to the associated storefront/marketplace.
251
+ """
252
+ return pulumi.get(self, "channel_uri")
253
+
254
+ @channel_uri.setter
255
+ def channel_uri(self, value: Optional[pulumi.Input[str]]):
256
+ pulumi.set(self, "channel_uri", value)
257
+
258
+ @property
259
+ @pulumi.getter(name="createdAt")
260
+ def created_at(self) -> Optional[pulumi.Input[str]]:
261
+ """
262
+ Created time as milliseconds since epoch.
263
+ """
264
+ return pulumi.get(self, "created_at")
265
+
266
+ @created_at.setter
267
+ def created_at(self, value: Optional[pulumi.Input[str]]):
268
+ pulumi.set(self, "created_at", value)
269
+
270
+ @property
271
+ @pulumi.getter(name="displayName")
272
+ def display_name(self) -> Optional[pulumi.Input[str]]:
273
+ """
274
+ App group name displayed in the UI
275
+ """
276
+ return pulumi.get(self, "display_name")
277
+
278
+ @display_name.setter
279
+ def display_name(self, value: Optional[pulumi.Input[str]]):
280
+ pulumi.set(self, "display_name", value)
281
+
282
+ @property
283
+ @pulumi.getter(name="lastModifiedAt")
284
+ def last_modified_at(self) -> Optional[pulumi.Input[str]]:
285
+ """
286
+ Modified time as milliseconds since epoch.
287
+ """
288
+ return pulumi.get(self, "last_modified_at")
289
+
290
+ @last_modified_at.setter
291
+ def last_modified_at(self, value: Optional[pulumi.Input[str]]):
292
+ pulumi.set(self, "last_modified_at", value)
293
+
294
+ @property
295
+ @pulumi.getter
296
+ def name(self) -> Optional[pulumi.Input[str]]:
297
+ """
298
+ Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._-$ %.
299
+ """
300
+ return pulumi.get(self, "name")
301
+
302
+ @name.setter
303
+ def name(self, value: Optional[pulumi.Input[str]]):
304
+ pulumi.set(self, "name", value)
305
+
306
+ @property
307
+ @pulumi.getter(name="orgId")
308
+ def org_id(self) -> Optional[pulumi.Input[str]]:
309
+ """
310
+ The Apigee Organization associated with the Apigee app group,
311
+ in the format `organizations/{{org_name}}`.
312
+
313
+
314
+ - - -
315
+ """
316
+ return pulumi.get(self, "org_id")
317
+
318
+ @org_id.setter
319
+ def org_id(self, value: Optional[pulumi.Input[str]]):
320
+ pulumi.set(self, "org_id", value)
321
+
322
+ @property
323
+ @pulumi.getter
324
+ def organization(self) -> Optional[pulumi.Input[str]]:
325
+ """
326
+ App group name displayed in the UI
327
+ """
328
+ return pulumi.get(self, "organization")
329
+
330
+ @organization.setter
331
+ def organization(self, value: Optional[pulumi.Input[str]]):
332
+ pulumi.set(self, "organization", value)
333
+
334
+ @property
335
+ @pulumi.getter
336
+ def status(self) -> Optional[pulumi.Input[str]]:
337
+ """
338
+ Valid values are active or inactive. Note that the status of the AppGroup should be updated via UpdateAppGroupRequest by setting the action as active or inactive.
339
+ Possible values are: `active`, `inactive`.
340
+ """
341
+ return pulumi.get(self, "status")
342
+
343
+ @status.setter
344
+ def status(self, value: Optional[pulumi.Input[str]]):
345
+ pulumi.set(self, "status", value)
346
+
347
+
348
+ class AppGroup(pulumi.CustomResource):
349
+ @overload
350
+ def __init__(__self__,
351
+ resource_name: str,
352
+ opts: Optional[pulumi.ResourceOptions] = None,
353
+ attributes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AppGroupAttributeArgs', 'AppGroupAttributeArgsDict']]]]] = None,
354
+ channel_id: Optional[pulumi.Input[str]] = None,
355
+ channel_uri: Optional[pulumi.Input[str]] = None,
356
+ display_name: Optional[pulumi.Input[str]] = None,
357
+ name: Optional[pulumi.Input[str]] = None,
358
+ org_id: Optional[pulumi.Input[str]] = None,
359
+ status: Optional[pulumi.Input[str]] = None,
360
+ __props__=None):
361
+ """
362
+ An `AppGroup` in Apigee.
363
+
364
+ To get more information about AppGroup, see:
365
+
366
+ * [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.appgroups)
367
+ * How-to Guides
368
+ * [Organizing client app ownership](https://cloud.google.com/apigee/docs/api-platform/publish/organizing-client-app-ownership)
369
+
370
+ ## Example Usage
371
+
372
+ ### Apigee App Group Basic
373
+
374
+ ```python
375
+ import pulumi
376
+ import pulumi_gcp as gcp
377
+
378
+ current = gcp.organizations.get_client_config()
379
+ apigee_network = gcp.compute.Network("apigee_network", name="apigee-network")
380
+ apigee_range = gcp.compute.GlobalAddress("apigee_range",
381
+ name="apigee-range",
382
+ purpose="VPC_PEERING",
383
+ address_type="INTERNAL",
384
+ prefix_length=16,
385
+ network=apigee_network.id)
386
+ apigee_vpc_connection = gcp.servicenetworking.Connection("apigee_vpc_connection",
387
+ network=apigee_network.id,
388
+ service="servicenetworking.googleapis.com",
389
+ reserved_peering_ranges=[apigee_range.name])
390
+ apigee_org = gcp.apigee.Organization("apigee_org",
391
+ analytics_region="us-central1",
392
+ project_id=current.project,
393
+ authorized_network=apigee_network.id,
394
+ opts = pulumi.ResourceOptions(depends_on=[apigee_vpc_connection]))
395
+ apigee_instance = gcp.apigee.Instance("apigee_instance",
396
+ name="instance",
397
+ location="us-central1",
398
+ org_id=apigee_org.id,
399
+ peering_cidr_range="SLASH_22")
400
+ apigee_app_group = gcp.apigee.AppGroup("apigee_app_group",
401
+ name="my-app-group",
402
+ display_name="Test app group",
403
+ channel_id="storefront",
404
+ channel_uri="https://my-dev-portal.org/groups/my-group",
405
+ status="active",
406
+ org_id=apigee_org.id,
407
+ opts = pulumi.ResourceOptions(depends_on=[apigee_instance]))
408
+ ```
409
+ ### Apigee App Group With Attributes
410
+
411
+ ```python
412
+ import pulumi
413
+ import pulumi_gcp as gcp
414
+
415
+ current = gcp.organizations.get_client_config()
416
+ apigee_network = gcp.compute.Network("apigee_network", name="apigee-network")
417
+ apigee_range = gcp.compute.GlobalAddress("apigee_range",
418
+ name="apigee-range",
419
+ purpose="VPC_PEERING",
420
+ address_type="INTERNAL",
421
+ prefix_length=16,
422
+ network=apigee_network.id)
423
+ apigee_vpc_connection = gcp.servicenetworking.Connection("apigee_vpc_connection",
424
+ network=apigee_network.id,
425
+ service="servicenetworking.googleapis.com",
426
+ reserved_peering_ranges=[apigee_range.name])
427
+ apigee_org = gcp.apigee.Organization("apigee_org",
428
+ analytics_region="us-central1",
429
+ project_id=current.project,
430
+ authorized_network=apigee_network.id,
431
+ opts = pulumi.ResourceOptions(depends_on=[apigee_vpc_connection]))
432
+ apigee_instance = gcp.apigee.Instance("apigee_instance",
433
+ name="instance",
434
+ location="us-central1",
435
+ org_id=apigee_org.id,
436
+ peering_cidr_range="SLASH_22")
437
+ apigee_app_group = gcp.apigee.AppGroup("apigee_app_group",
438
+ name="my-app-group",
439
+ display_name="Test app group",
440
+ channel_id="storefront",
441
+ channel_uri="https://my-dev-portal.org/groups/my-group",
442
+ status="active",
443
+ org_id=apigee_org.id,
444
+ attributes=[
445
+ {
446
+ "name": "business_unit",
447
+ "value": "HR",
448
+ },
449
+ {
450
+ "name": "department",
451
+ "value": "payroll",
452
+ },
453
+ ],
454
+ opts = pulumi.ResourceOptions(depends_on=[apigee_instance]))
455
+ ```
456
+
457
+ ## Import
458
+
459
+ AppGroup can be imported using any of these accepted formats:
460
+
461
+ * `{{org_id}}/appgroups/{{name}}`
462
+
463
+ * `{{org_id}}/{{name}}`
464
+
465
+ When using the `pulumi import` command, AppGroup can be imported using one of the formats above. For example:
466
+
467
+ ```sh
468
+ $ pulumi import gcp:apigee/appGroup:AppGroup default {{org_id}}/appgroups/{{name}}
469
+ ```
470
+
471
+ ```sh
472
+ $ pulumi import gcp:apigee/appGroup:AppGroup default {{org_id}}/{{name}}
473
+ ```
474
+
475
+ :param str resource_name: The name of the resource.
476
+ :param pulumi.ResourceOptions opts: Options for the resource.
477
+ :param pulumi.Input[Sequence[pulumi.Input[Union['AppGroupAttributeArgs', 'AppGroupAttributeArgsDict']]]] attributes: A list of attributes
478
+ Structure is documented below.
479
+ :param pulumi.Input[str] channel_id: Channel identifier identifies the owner maintaing this grouping.
480
+ :param pulumi.Input[str] channel_uri: A reference to the associated storefront/marketplace.
481
+ :param pulumi.Input[str] display_name: App group name displayed in the UI
482
+ :param pulumi.Input[str] name: Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._-$ %.
483
+ :param pulumi.Input[str] org_id: The Apigee Organization associated with the Apigee app group,
484
+ in the format `organizations/{{org_name}}`.
485
+
486
+
487
+ - - -
488
+ :param pulumi.Input[str] status: Valid values are active or inactive. Note that the status of the AppGroup should be updated via UpdateAppGroupRequest by setting the action as active or inactive.
489
+ Possible values are: `active`, `inactive`.
490
+ """
491
+ ...
492
+ @overload
493
+ def __init__(__self__,
494
+ resource_name: str,
495
+ args: AppGroupArgs,
496
+ opts: Optional[pulumi.ResourceOptions] = None):
497
+ """
498
+ An `AppGroup` in Apigee.
499
+
500
+ To get more information about AppGroup, see:
501
+
502
+ * [API documentation](https://cloud.google.com/apigee/docs/reference/apis/apigee/rest/v1/organizations.appgroups)
503
+ * How-to Guides
504
+ * [Organizing client app ownership](https://cloud.google.com/apigee/docs/api-platform/publish/organizing-client-app-ownership)
505
+
506
+ ## Example Usage
507
+
508
+ ### Apigee App Group Basic
509
+
510
+ ```python
511
+ import pulumi
512
+ import pulumi_gcp as gcp
513
+
514
+ current = gcp.organizations.get_client_config()
515
+ apigee_network = gcp.compute.Network("apigee_network", name="apigee-network")
516
+ apigee_range = gcp.compute.GlobalAddress("apigee_range",
517
+ name="apigee-range",
518
+ purpose="VPC_PEERING",
519
+ address_type="INTERNAL",
520
+ prefix_length=16,
521
+ network=apigee_network.id)
522
+ apigee_vpc_connection = gcp.servicenetworking.Connection("apigee_vpc_connection",
523
+ network=apigee_network.id,
524
+ service="servicenetworking.googleapis.com",
525
+ reserved_peering_ranges=[apigee_range.name])
526
+ apigee_org = gcp.apigee.Organization("apigee_org",
527
+ analytics_region="us-central1",
528
+ project_id=current.project,
529
+ authorized_network=apigee_network.id,
530
+ opts = pulumi.ResourceOptions(depends_on=[apigee_vpc_connection]))
531
+ apigee_instance = gcp.apigee.Instance("apigee_instance",
532
+ name="instance",
533
+ location="us-central1",
534
+ org_id=apigee_org.id,
535
+ peering_cidr_range="SLASH_22")
536
+ apigee_app_group = gcp.apigee.AppGroup("apigee_app_group",
537
+ name="my-app-group",
538
+ display_name="Test app group",
539
+ channel_id="storefront",
540
+ channel_uri="https://my-dev-portal.org/groups/my-group",
541
+ status="active",
542
+ org_id=apigee_org.id,
543
+ opts = pulumi.ResourceOptions(depends_on=[apigee_instance]))
544
+ ```
545
+ ### Apigee App Group With Attributes
546
+
547
+ ```python
548
+ import pulumi
549
+ import pulumi_gcp as gcp
550
+
551
+ current = gcp.organizations.get_client_config()
552
+ apigee_network = gcp.compute.Network("apigee_network", name="apigee-network")
553
+ apigee_range = gcp.compute.GlobalAddress("apigee_range",
554
+ name="apigee-range",
555
+ purpose="VPC_PEERING",
556
+ address_type="INTERNAL",
557
+ prefix_length=16,
558
+ network=apigee_network.id)
559
+ apigee_vpc_connection = gcp.servicenetworking.Connection("apigee_vpc_connection",
560
+ network=apigee_network.id,
561
+ service="servicenetworking.googleapis.com",
562
+ reserved_peering_ranges=[apigee_range.name])
563
+ apigee_org = gcp.apigee.Organization("apigee_org",
564
+ analytics_region="us-central1",
565
+ project_id=current.project,
566
+ authorized_network=apigee_network.id,
567
+ opts = pulumi.ResourceOptions(depends_on=[apigee_vpc_connection]))
568
+ apigee_instance = gcp.apigee.Instance("apigee_instance",
569
+ name="instance",
570
+ location="us-central1",
571
+ org_id=apigee_org.id,
572
+ peering_cidr_range="SLASH_22")
573
+ apigee_app_group = gcp.apigee.AppGroup("apigee_app_group",
574
+ name="my-app-group",
575
+ display_name="Test app group",
576
+ channel_id="storefront",
577
+ channel_uri="https://my-dev-portal.org/groups/my-group",
578
+ status="active",
579
+ org_id=apigee_org.id,
580
+ attributes=[
581
+ {
582
+ "name": "business_unit",
583
+ "value": "HR",
584
+ },
585
+ {
586
+ "name": "department",
587
+ "value": "payroll",
588
+ },
589
+ ],
590
+ opts = pulumi.ResourceOptions(depends_on=[apigee_instance]))
591
+ ```
592
+
593
+ ## Import
594
+
595
+ AppGroup can be imported using any of these accepted formats:
596
+
597
+ * `{{org_id}}/appgroups/{{name}}`
598
+
599
+ * `{{org_id}}/{{name}}`
600
+
601
+ When using the `pulumi import` command, AppGroup can be imported using one of the formats above. For example:
602
+
603
+ ```sh
604
+ $ pulumi import gcp:apigee/appGroup:AppGroup default {{org_id}}/appgroups/{{name}}
605
+ ```
606
+
607
+ ```sh
608
+ $ pulumi import gcp:apigee/appGroup:AppGroup default {{org_id}}/{{name}}
609
+ ```
610
+
611
+ :param str resource_name: The name of the resource.
612
+ :param AppGroupArgs args: The arguments to use to populate this resource's properties.
613
+ :param pulumi.ResourceOptions opts: Options for the resource.
614
+ """
615
+ ...
616
+ def __init__(__self__, resource_name: str, *args, **kwargs):
617
+ resource_args, opts = _utilities.get_resource_args_opts(AppGroupArgs, pulumi.ResourceOptions, *args, **kwargs)
618
+ if resource_args is not None:
619
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
620
+ else:
621
+ __self__._internal_init(resource_name, *args, **kwargs)
622
+
623
+ def _internal_init(__self__,
624
+ resource_name: str,
625
+ opts: Optional[pulumi.ResourceOptions] = None,
626
+ attributes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AppGroupAttributeArgs', 'AppGroupAttributeArgsDict']]]]] = None,
627
+ channel_id: Optional[pulumi.Input[str]] = None,
628
+ channel_uri: Optional[pulumi.Input[str]] = None,
629
+ display_name: Optional[pulumi.Input[str]] = None,
630
+ name: Optional[pulumi.Input[str]] = None,
631
+ org_id: Optional[pulumi.Input[str]] = None,
632
+ status: Optional[pulumi.Input[str]] = None,
633
+ __props__=None):
634
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
635
+ if not isinstance(opts, pulumi.ResourceOptions):
636
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
637
+ if opts.id is None:
638
+ if __props__ is not None:
639
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
640
+ __props__ = AppGroupArgs.__new__(AppGroupArgs)
641
+
642
+ __props__.__dict__["attributes"] = attributes
643
+ __props__.__dict__["channel_id"] = channel_id
644
+ __props__.__dict__["channel_uri"] = channel_uri
645
+ __props__.__dict__["display_name"] = display_name
646
+ __props__.__dict__["name"] = name
647
+ if org_id is None and not opts.urn:
648
+ raise TypeError("Missing required property 'org_id'")
649
+ __props__.__dict__["org_id"] = org_id
650
+ __props__.__dict__["status"] = status
651
+ __props__.__dict__["app_group_id"] = None
652
+ __props__.__dict__["created_at"] = None
653
+ __props__.__dict__["last_modified_at"] = None
654
+ __props__.__dict__["organization"] = None
655
+ super(AppGroup, __self__).__init__(
656
+ 'gcp:apigee/appGroup:AppGroup',
657
+ resource_name,
658
+ __props__,
659
+ opts)
660
+
661
+ @staticmethod
662
+ def get(resource_name: str,
663
+ id: pulumi.Input[str],
664
+ opts: Optional[pulumi.ResourceOptions] = None,
665
+ app_group_id: Optional[pulumi.Input[str]] = None,
666
+ attributes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AppGroupAttributeArgs', 'AppGroupAttributeArgsDict']]]]] = None,
667
+ channel_id: Optional[pulumi.Input[str]] = None,
668
+ channel_uri: Optional[pulumi.Input[str]] = None,
669
+ created_at: Optional[pulumi.Input[str]] = None,
670
+ display_name: Optional[pulumi.Input[str]] = None,
671
+ last_modified_at: Optional[pulumi.Input[str]] = None,
672
+ name: Optional[pulumi.Input[str]] = None,
673
+ org_id: Optional[pulumi.Input[str]] = None,
674
+ organization: Optional[pulumi.Input[str]] = None,
675
+ status: Optional[pulumi.Input[str]] = None) -> 'AppGroup':
676
+ """
677
+ Get an existing AppGroup resource's state with the given name, id, and optional extra
678
+ properties used to qualify the lookup.
679
+
680
+ :param str resource_name: The unique name of the resulting resource.
681
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
682
+ :param pulumi.ResourceOptions opts: Options for the resource.
683
+ :param pulumi.Input[str] app_group_id: Internal identifier that cannot be edited
684
+ :param pulumi.Input[Sequence[pulumi.Input[Union['AppGroupAttributeArgs', 'AppGroupAttributeArgsDict']]]] attributes: A list of attributes
685
+ Structure is documented below.
686
+ :param pulumi.Input[str] channel_id: Channel identifier identifies the owner maintaing this grouping.
687
+ :param pulumi.Input[str] channel_uri: A reference to the associated storefront/marketplace.
688
+ :param pulumi.Input[str] created_at: Created time as milliseconds since epoch.
689
+ :param pulumi.Input[str] display_name: App group name displayed in the UI
690
+ :param pulumi.Input[str] last_modified_at: Modified time as milliseconds since epoch.
691
+ :param pulumi.Input[str] name: Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._-$ %.
692
+ :param pulumi.Input[str] org_id: The Apigee Organization associated with the Apigee app group,
693
+ in the format `organizations/{{org_name}}`.
694
+
695
+
696
+ - - -
697
+ :param pulumi.Input[str] organization: App group name displayed in the UI
698
+ :param pulumi.Input[str] status: Valid values are active or inactive. Note that the status of the AppGroup should be updated via UpdateAppGroupRequest by setting the action as active or inactive.
699
+ Possible values are: `active`, `inactive`.
700
+ """
701
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
702
+
703
+ __props__ = _AppGroupState.__new__(_AppGroupState)
704
+
705
+ __props__.__dict__["app_group_id"] = app_group_id
706
+ __props__.__dict__["attributes"] = attributes
707
+ __props__.__dict__["channel_id"] = channel_id
708
+ __props__.__dict__["channel_uri"] = channel_uri
709
+ __props__.__dict__["created_at"] = created_at
710
+ __props__.__dict__["display_name"] = display_name
711
+ __props__.__dict__["last_modified_at"] = last_modified_at
712
+ __props__.__dict__["name"] = name
713
+ __props__.__dict__["org_id"] = org_id
714
+ __props__.__dict__["organization"] = organization
715
+ __props__.__dict__["status"] = status
716
+ return AppGroup(resource_name, opts=opts, __props__=__props__)
717
+
718
+ @property
719
+ @pulumi.getter(name="appGroupId")
720
+ def app_group_id(self) -> pulumi.Output[str]:
721
+ """
722
+ Internal identifier that cannot be edited
723
+ """
724
+ return pulumi.get(self, "app_group_id")
725
+
726
+ @property
727
+ @pulumi.getter
728
+ def attributes(self) -> pulumi.Output[Optional[Sequence['outputs.AppGroupAttribute']]]:
729
+ """
730
+ A list of attributes
731
+ Structure is documented below.
732
+ """
733
+ return pulumi.get(self, "attributes")
734
+
735
+ @property
736
+ @pulumi.getter(name="channelId")
737
+ def channel_id(self) -> pulumi.Output[Optional[str]]:
738
+ """
739
+ Channel identifier identifies the owner maintaing this grouping.
740
+ """
741
+ return pulumi.get(self, "channel_id")
742
+
743
+ @property
744
+ @pulumi.getter(name="channelUri")
745
+ def channel_uri(self) -> pulumi.Output[Optional[str]]:
746
+ """
747
+ A reference to the associated storefront/marketplace.
748
+ """
749
+ return pulumi.get(self, "channel_uri")
750
+
751
+ @property
752
+ @pulumi.getter(name="createdAt")
753
+ def created_at(self) -> pulumi.Output[str]:
754
+ """
755
+ Created time as milliseconds since epoch.
756
+ """
757
+ return pulumi.get(self, "created_at")
758
+
759
+ @property
760
+ @pulumi.getter(name="displayName")
761
+ def display_name(self) -> pulumi.Output[Optional[str]]:
762
+ """
763
+ App group name displayed in the UI
764
+ """
765
+ return pulumi.get(self, "display_name")
766
+
767
+ @property
768
+ @pulumi.getter(name="lastModifiedAt")
769
+ def last_modified_at(self) -> pulumi.Output[str]:
770
+ """
771
+ Modified time as milliseconds since epoch.
772
+ """
773
+ return pulumi.get(self, "last_modified_at")
774
+
775
+ @property
776
+ @pulumi.getter
777
+ def name(self) -> pulumi.Output[str]:
778
+ """
779
+ Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._-$ %.
780
+ """
781
+ return pulumi.get(self, "name")
782
+
783
+ @property
784
+ @pulumi.getter(name="orgId")
785
+ def org_id(self) -> pulumi.Output[str]:
786
+ """
787
+ The Apigee Organization associated with the Apigee app group,
788
+ in the format `organizations/{{org_name}}`.
789
+
790
+
791
+ - - -
792
+ """
793
+ return pulumi.get(self, "org_id")
794
+
795
+ @property
796
+ @pulumi.getter
797
+ def organization(self) -> pulumi.Output[str]:
798
+ """
799
+ App group name displayed in the UI
800
+ """
801
+ return pulumi.get(self, "organization")
802
+
803
+ @property
804
+ @pulumi.getter
805
+ def status(self) -> pulumi.Output[Optional[str]]:
806
+ """
807
+ Valid values are active or inactive. Note that the status of the AppGroup should be updated via UpdateAppGroupRequest by setting the action as active or inactive.
808
+ Possible values are: `active`, `inactive`.
809
+ """
810
+ return pulumi.get(self, "status")
811
+