pulumi-gcp 8.32.0a1747377897__py3-none-any.whl → 8.32.0a1747834582__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 (256) hide show
  1. pulumi_gcp/__init__.py +88 -0
  2. pulumi_gcp/accesscontextmanager/authorized_orgs_desc.py +2 -2
  3. pulumi_gcp/apigateway/api_config_iam_binding.py +13 -0
  4. pulumi_gcp/apigateway/api_config_iam_member.py +13 -0
  5. pulumi_gcp/apigateway/api_config_iam_policy.py +13 -0
  6. pulumi_gcp/apigateway/api_iam_binding.py +13 -0
  7. pulumi_gcp/apigateway/api_iam_member.py +13 -0
  8. pulumi_gcp/apigateway/api_iam_policy.py +13 -0
  9. pulumi_gcp/apigateway/gateway_iam_binding.py +13 -0
  10. pulumi_gcp/apigateway/gateway_iam_member.py +13 -0
  11. pulumi_gcp/apigateway/gateway_iam_policy.py +13 -0
  12. pulumi_gcp/apigateway/get_api_config_iam_policy.py +2 -0
  13. pulumi_gcp/apigateway/get_api_iam_policy.py +2 -0
  14. pulumi_gcp/apigateway/get_gateway_iam_policy.py +2 -0
  15. pulumi_gcp/apigee/environment_iam_binding.py +27 -0
  16. pulumi_gcp/apigee/environment_iam_member.py +27 -0
  17. pulumi_gcp/apigee/environment_iam_policy.py +27 -0
  18. pulumi_gcp/apigee/get_environment_iam_policy.py +6 -0
  19. pulumi_gcp/beyondcorp/__init__.py +1 -0
  20. pulumi_gcp/beyondcorp/application.py +8 -4
  21. pulumi_gcp/beyondcorp/application_iam_binding.py +26 -0
  22. pulumi_gcp/beyondcorp/application_iam_member.py +26 -0
  23. pulumi_gcp/beyondcorp/application_iam_policy.py +26 -0
  24. pulumi_gcp/beyondcorp/get_application_iam_policy.py +4 -0
  25. pulumi_gcp/beyondcorp/get_security_gateway.py +222 -0
  26. pulumi_gcp/beyondcorp/get_security_gateway_iam_policy.py +2 -0
  27. pulumi_gcp/beyondcorp/outputs.py +45 -0
  28. pulumi_gcp/beyondcorp/security_gateway_iam_binding.py +13 -0
  29. pulumi_gcp/beyondcorp/security_gateway_iam_member.py +13 -0
  30. pulumi_gcp/beyondcorp/security_gateway_iam_policy.py +13 -0
  31. pulumi_gcp/bigquery/__init__.py +1 -0
  32. pulumi_gcp/bigquery/connection_iam_binding.py +4 -11
  33. pulumi_gcp/bigquery/connection_iam_member.py +4 -11
  34. pulumi_gcp/bigquery/connection_iam_policy.py +4 -11
  35. pulumi_gcp/bigquery/data_transfer_config.py +2 -2
  36. pulumi_gcp/bigquery/get_connection_iam_policy.py +2 -4
  37. pulumi_gcp/bigquery/get_table_iam_policy.py +4 -0
  38. pulumi_gcp/bigquery/iam_binding.py +26 -0
  39. pulumi_gcp/bigquery/iam_member.py +26 -0
  40. pulumi_gcp/bigquery/iam_policy.py +26 -0
  41. pulumi_gcp/bigquery/row_access_policy.py +787 -0
  42. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +7 -7
  43. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +7 -7
  44. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +7 -7
  45. pulumi_gcp/bigqueryanalyticshub/get_data_exchange_iam_policy.py +2 -2
  46. pulumi_gcp/bigqueryanalyticshub/get_listing_iam_policy.py +2 -2
  47. pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +7 -7
  48. pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +7 -7
  49. pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +7 -7
  50. pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +6 -6
  51. pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +13 -0
  52. pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +13 -0
  53. pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +13 -0
  54. pulumi_gcp/bigquerydatapolicy/get_iam_policy.py +2 -0
  55. pulumi_gcp/bigtable/logical_view.py +49 -0
  56. pulumi_gcp/cloudbuild/trigger.py +2 -2
  57. pulumi_gcp/clouddeploy/get_delivery_pipeline_iam_policy.py +6 -0
  58. pulumi_gcp/clouddeploy/get_target_iam_policy.py +6 -0
  59. pulumi_gcp/colab/schedule.py +2 -2
  60. pulumi_gcp/compute/_inputs.py +126 -0
  61. pulumi_gcp/compute/backend_service.py +259 -51
  62. pulumi_gcp/compute/get_backend_service.py +23 -1
  63. pulumi_gcp/compute/get_global_forwarding_rule.py +23 -1
  64. pulumi_gcp/compute/get_instance_template.py +12 -1
  65. pulumi_gcp/compute/get_network_endpoint_group.py +12 -1
  66. pulumi_gcp/compute/global_forwarding_rule.py +199 -0
  67. pulumi_gcp/compute/instance_template.py +28 -0
  68. pulumi_gcp/compute/network_endpoint_group.py +28 -0
  69. pulumi_gcp/compute/outputs.py +110 -0
  70. pulumi_gcp/compute/region_backend_service.py +58 -51
  71. pulumi_gcp/container/cluster.py +47 -0
  72. pulumi_gcp/container/get_cluster.py +12 -1
  73. pulumi_gcp/datacatalog/entry_group_iam_binding.py +34 -0
  74. pulumi_gcp/datacatalog/entry_group_iam_member.py +34 -0
  75. pulumi_gcp/datacatalog/entry_group_iam_policy.py +34 -0
  76. pulumi_gcp/datacatalog/get_entry_group_iam_policy.py +8 -0
  77. pulumi_gcp/datacatalog/get_tag_template_iam_policy.py +8 -0
  78. pulumi_gcp/datacatalog/get_taxonomy_iam_policy.py +8 -0
  79. pulumi_gcp/datacatalog/tag_template_iam_binding.py +34 -0
  80. pulumi_gcp/datacatalog/tag_template_iam_member.py +34 -0
  81. pulumi_gcp/datacatalog/tag_template_iam_policy.py +34 -0
  82. pulumi_gcp/datacatalog/taxonomy_iam_binding.py +34 -0
  83. pulumi_gcp/datacatalog/taxonomy_iam_member.py +34 -0
  84. pulumi_gcp/datacatalog/taxonomy_iam_policy.py +34 -0
  85. pulumi_gcp/dataplex/__init__.py +5 -0
  86. pulumi_gcp/dataplex/_inputs.py +98 -0
  87. pulumi_gcp/dataplex/aspect_type_iam_binding.py +13 -0
  88. pulumi_gcp/dataplex/aspect_type_iam_member.py +13 -0
  89. pulumi_gcp/dataplex/aspect_type_iam_policy.py +13 -0
  90. pulumi_gcp/dataplex/asset_iam_binding.py +53 -0
  91. pulumi_gcp/dataplex/asset_iam_member.py +53 -0
  92. pulumi_gcp/dataplex/asset_iam_policy.py +53 -0
  93. pulumi_gcp/dataplex/datascan_iam_binding.py +13 -0
  94. pulumi_gcp/dataplex/datascan_iam_member.py +13 -0
  95. pulumi_gcp/dataplex/datascan_iam_policy.py +13 -0
  96. pulumi_gcp/dataplex/entry_group_iam_binding.py +13 -0
  97. pulumi_gcp/dataplex/entry_group_iam_member.py +13 -0
  98. pulumi_gcp/dataplex/entry_group_iam_policy.py +13 -0
  99. pulumi_gcp/dataplex/entry_type_iam_binding.py +13 -0
  100. pulumi_gcp/dataplex/entry_type_iam_member.py +13 -0
  101. pulumi_gcp/dataplex/entry_type_iam_policy.py +13 -0
  102. pulumi_gcp/dataplex/get_aspect_type_iam_policy.py +2 -0
  103. pulumi_gcp/dataplex/get_asset_iam_policy.py +10 -0
  104. pulumi_gcp/dataplex/get_datascan_iam_policy.py +2 -0
  105. pulumi_gcp/dataplex/get_entry_group_iam_policy.py +2 -0
  106. pulumi_gcp/dataplex/get_entry_type_iam_policy.py +2 -0
  107. pulumi_gcp/dataplex/get_glossary_iam_policy.py +185 -0
  108. pulumi_gcp/dataplex/get_lake_iam_policy.py +6 -0
  109. pulumi_gcp/dataplex/get_task_iam_policy.py +2 -0
  110. pulumi_gcp/dataplex/get_zone_iam_policy.py +8 -0
  111. pulumi_gcp/dataplex/glossary.py +772 -0
  112. pulumi_gcp/dataplex/glossary_iam_binding.py +837 -0
  113. pulumi_gcp/dataplex/glossary_iam_member.py +837 -0
  114. pulumi_gcp/dataplex/glossary_iam_policy.py +676 -0
  115. pulumi_gcp/dataplex/lake_iam_binding.py +27 -0
  116. pulumi_gcp/dataplex/lake_iam_member.py +27 -0
  117. pulumi_gcp/dataplex/lake_iam_policy.py +27 -0
  118. pulumi_gcp/dataplex/outputs.py +56 -0
  119. pulumi_gcp/dataplex/task_iam_binding.py +13 -0
  120. pulumi_gcp/dataplex/task_iam_member.py +13 -0
  121. pulumi_gcp/dataplex/task_iam_policy.py +13 -0
  122. pulumi_gcp/dataplex/zone_iam_binding.py +40 -0
  123. pulumi_gcp/dataplex/zone_iam_member.py +40 -0
  124. pulumi_gcp/dataplex/zone_iam_policy.py +40 -0
  125. pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +4 -25
  126. pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +4 -25
  127. pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +4 -25
  128. pulumi_gcp/dataproc/get_autoscaling_policy_iam_policy.py +2 -8
  129. pulumi_gcp/dataproc/get_metastore_database_iam_policy.py +8 -0
  130. pulumi_gcp/dataproc/get_metastore_federation_iam_policy.py +2 -0
  131. pulumi_gcp/dataproc/get_metastore_service_iam_policy.py +2 -0
  132. pulumi_gcp/dataproc/get_metastore_table_iam_policy.py +10 -0
  133. pulumi_gcp/dataproc/metastore_database_iam_binding.py +40 -0
  134. pulumi_gcp/dataproc/metastore_database_iam_member.py +40 -0
  135. pulumi_gcp/dataproc/metastore_database_iam_policy.py +40 -0
  136. pulumi_gcp/dataproc/metastore_federation_iam_binding.py +13 -0
  137. pulumi_gcp/dataproc/metastore_federation_iam_member.py +13 -0
  138. pulumi_gcp/dataproc/metastore_federation_iam_policy.py +13 -0
  139. pulumi_gcp/dataproc/metastore_service_iam_binding.py +13 -0
  140. pulumi_gcp/dataproc/metastore_service_iam_member.py +13 -0
  141. pulumi_gcp/dataproc/metastore_service_iam_policy.py +13 -0
  142. pulumi_gcp/dataproc/metastore_table_iam_binding.py +53 -0
  143. pulumi_gcp/dataproc/metastore_table_iam_member.py +53 -0
  144. pulumi_gcp/dataproc/metastore_table_iam_policy.py +53 -0
  145. pulumi_gcp/diagflow/_inputs.py +56 -0
  146. pulumi_gcp/diagflow/cx_agent.py +60 -0
  147. pulumi_gcp/diagflow/cx_flow.py +2 -0
  148. pulumi_gcp/diagflow/entity_type.py +2 -2
  149. pulumi_gcp/diagflow/outputs.py +35 -0
  150. pulumi_gcp/edgecontainer/node_pool.py +2 -2
  151. pulumi_gcp/endpoints/consumers_iam_binding.py +26 -0
  152. pulumi_gcp/endpoints/consumers_iam_member.py +26 -0
  153. pulumi_gcp/endpoints/consumers_iam_policy.py +26 -0
  154. pulumi_gcp/endpoints/get_service_consumers_iam_policy.py +8 -0
  155. pulumi_gcp/endpoints/get_service_iam_policy.py +6 -0
  156. pulumi_gcp/endpoints/service_iam_binding.py +13 -0
  157. pulumi_gcp/endpoints/service_iam_member.py +13 -0
  158. pulumi_gcp/endpoints/service_iam_policy.py +13 -0
  159. pulumi_gcp/firebase/__init__.py +3 -0
  160. pulumi_gcp/firebase/_inputs.py +1527 -0
  161. pulumi_gcp/firebase/app_hosting_backend.py +104 -0
  162. pulumi_gcp/firebase/app_hosting_default_domain.py +721 -0
  163. pulumi_gcp/firebase/app_hosting_domain.py +796 -0
  164. pulumi_gcp/firebase/app_hosting_traffic.py +914 -0
  165. pulumi_gcp/firebase/extensions_instance.py +4 -4
  166. pulumi_gcp/firebase/outputs.py +1075 -0
  167. pulumi_gcp/firestore/database.py +9 -0
  168. pulumi_gcp/gemini/get_repository_group_iam_policy.py +4 -0
  169. pulumi_gcp/gemini/repository_group_iam_binding.py +26 -0
  170. pulumi_gcp/gemini/repository_group_iam_member.py +26 -0
  171. pulumi_gcp/gemini/repository_group_iam_policy.py +26 -0
  172. pulumi_gcp/gkebackup/backup_channel.py +9 -9
  173. pulumi_gcp/gkebackup/restore_channel.py +9 -9
  174. pulumi_gcp/gkehub/get_membership_iam_policy.py +2 -0
  175. pulumi_gcp/gkehub/get_scope_iam_policy.py +2 -0
  176. pulumi_gcp/gkehub/membership_iam_binding.py +13 -0
  177. pulumi_gcp/gkehub/membership_iam_member.py +13 -0
  178. pulumi_gcp/gkehub/membership_iam_policy.py +13 -0
  179. pulumi_gcp/gkehub/scope_iam_binding.py +13 -0
  180. pulumi_gcp/gkehub/scope_iam_member.py +13 -0
  181. pulumi_gcp/gkehub/scope_iam_policy.py +13 -0
  182. pulumi_gcp/iam/__init__.py +4 -0
  183. pulumi_gcp/iam/_inputs.py +432 -0
  184. pulumi_gcp/iam/get_workload_identity_pool.py +35 -1
  185. pulumi_gcp/iam/get_workload_identity_pool_iam_policy.py +156 -0
  186. pulumi_gcp/iam/oauth_client_credential.py +6 -0
  187. pulumi_gcp/iam/outputs.py +510 -0
  188. pulumi_gcp/iam/workload_identity_pool.py +446 -24
  189. pulumi_gcp/iam/workload_identity_pool_iam_binding.py +539 -0
  190. pulumi_gcp/iam/workload_identity_pool_iam_member.py +539 -0
  191. pulumi_gcp/iam/workload_identity_pool_iam_policy.py +358 -0
  192. pulumi_gcp/iap/app_engine_service_iam_binding.py +14 -14
  193. pulumi_gcp/iap/app_engine_service_iam_member.py +14 -14
  194. pulumi_gcp/iap/app_engine_service_iam_policy.py +14 -14
  195. pulumi_gcp/iap/app_engine_version_iam_binding.py +14 -14
  196. pulumi_gcp/iap/app_engine_version_iam_member.py +14 -14
  197. pulumi_gcp/iap/app_engine_version_iam_policy.py +14 -14
  198. pulumi_gcp/iap/get_app_engine_service_iam_policy.py +4 -4
  199. pulumi_gcp/iap/get_app_engine_version_iam_policy.py +4 -4
  200. pulumi_gcp/iap/get_tunnel_dest_group_iam_policy.py +2 -0
  201. pulumi_gcp/iap/get_tunnel_instance_iam_policy.py +6 -0
  202. pulumi_gcp/iap/get_web_region_backend_service_iam_policy.py +6 -0
  203. pulumi_gcp/iap/get_web_type_app_engine_iam_policy.py +2 -2
  204. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +13 -0
  205. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +13 -0
  206. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +13 -0
  207. pulumi_gcp/iap/tunnel_instance_iam_binding.py +27 -0
  208. pulumi_gcp/iap/tunnel_instance_iam_member.py +27 -0
  209. pulumi_gcp/iap/tunnel_instance_iam_policy.py +27 -0
  210. pulumi_gcp/iap/web_region_backend_service_iam_binding.py +27 -0
  211. pulumi_gcp/iap/web_region_backend_service_iam_member.py +27 -0
  212. pulumi_gcp/iap/web_region_backend_service_iam_policy.py +27 -0
  213. pulumi_gcp/iap/web_type_app_enging_iam_binding.py +7 -7
  214. pulumi_gcp/iap/web_type_app_enging_iam_member.py +7 -7
  215. pulumi_gcp/iap/web_type_app_enging_iam_policy.py +7 -7
  216. pulumi_gcp/lustre/__init__.py +1 -0
  217. pulumi_gcp/lustre/get_instance.py +280 -0
  218. pulumi_gcp/lustre/instance.py +12 -0
  219. pulumi_gcp/netapp/backup.py +2 -2
  220. pulumi_gcp/networksecurity/intercept_deployment.py +10 -0
  221. pulumi_gcp/networksecurity/intercept_deployment_group.py +8 -0
  222. pulumi_gcp/networksecurity/intercept_endpoint_group.py +12 -0
  223. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +16 -0
  224. pulumi_gcp/pulumi-plugin.json +1 -1
  225. pulumi_gcp/secretmanager/get_regional_secret_iam_policy.py +2 -0
  226. pulumi_gcp/secretmanager/get_secret_iam_policy.py +2 -0
  227. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +13 -0
  228. pulumi_gcp/secretmanager/regional_secret_iam_member.py +13 -0
  229. pulumi_gcp/secretmanager/regional_secret_iam_policy.py +13 -0
  230. pulumi_gcp/secretmanager/secret_iam_binding.py +13 -0
  231. pulumi_gcp/secretmanager/secret_iam_member.py +13 -0
  232. pulumi_gcp/secretmanager/secret_iam_policy.py +13 -0
  233. pulumi_gcp/securesourcemanager/get_instance_iam_policy.py +2 -4
  234. pulumi_gcp/securesourcemanager/get_repository_iam_policy.py +2 -4
  235. pulumi_gcp/securesourcemanager/repository_iam_binding.py +4 -11
  236. pulumi_gcp/securesourcemanager/repository_iam_member.py +4 -11
  237. pulumi_gcp/securesourcemanager/repository_iam_policy.py +4 -11
  238. pulumi_gcp/securitycenter/v2_organization_scc_big_query_export.py +2 -2
  239. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +2 -2
  240. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_binding.py +13 -0
  241. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_member.py +13 -0
  242. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_policy.py +13 -0
  243. pulumi_gcp/vertex/get_ai_feature_online_store_featureview_iam_policy.py +2 -0
  244. pulumi_gcp/vmwareengine/external_address.py +4 -4
  245. pulumi_gcp/workstations/get_workstation_config_iam_policy.py +6 -0
  246. pulumi_gcp/workstations/get_workstation_iam_policy.py +10 -0
  247. pulumi_gcp/workstations/workstation_config_iam_binding.py +33 -0
  248. pulumi_gcp/workstations/workstation_config_iam_member.py +33 -0
  249. pulumi_gcp/workstations/workstation_config_iam_policy.py +33 -0
  250. pulumi_gcp/workstations/workstation_iam_binding.py +53 -0
  251. pulumi_gcp/workstations/workstation_iam_member.py +53 -0
  252. pulumi_gcp/workstations/workstation_iam_policy.py +53 -0
  253. {pulumi_gcp-8.32.0a1747377897.dist-info → pulumi_gcp-8.32.0a1747834582.dist-info}/METADATA +1 -1
  254. {pulumi_gcp-8.32.0a1747377897.dist-info → pulumi_gcp-8.32.0a1747834582.dist-info}/RECORD +256 -241
  255. {pulumi_gcp-8.32.0a1747377897.dist-info → pulumi_gcp-8.32.0a1747834582.dist-info}/WHEEL +1 -1
  256. {pulumi_gcp-8.32.0a1747377897.dist-info → pulumi_gcp-8.32.0a1747834582.dist-info}/top_level.txt +0 -0
@@ -25,6 +25,22 @@ __all__ = [
25
25
  'AppHostingBuildSourceCodebase',
26
26
  'AppHostingBuildSourceCodebaseAuthor',
27
27
  'AppHostingBuildSourceContainer',
28
+ 'AppHostingDomainCustomDomainStatus',
29
+ 'AppHostingDomainCustomDomainStatusIssue',
30
+ 'AppHostingDomainCustomDomainStatusRequiredDnsUpdate',
31
+ 'AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesired',
32
+ 'AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredCheckError',
33
+ 'AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredRecord',
34
+ 'AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscovered',
35
+ 'AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredCheckError',
36
+ 'AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredRecord',
37
+ 'AppHostingDomainServe',
38
+ 'AppHostingDomainServeRedirect',
39
+ 'AppHostingTrafficCurrent',
40
+ 'AppHostingTrafficCurrentSplit',
41
+ 'AppHostingTrafficRolloutPolicy',
42
+ 'AppHostingTrafficTarget',
43
+ 'AppHostingTrafficTargetSplit',
28
44
  'ExtensionsInstanceConfig',
29
45
  'ExtensionsInstanceErrorStatus',
30
46
  'ExtensionsInstanceRuntimeData',
@@ -503,6 +519,1065 @@ class AppHostingBuildSourceContainer(dict):
503
519
  return pulumi.get(self, "image")
504
520
 
505
521
 
522
+ @pulumi.output_type
523
+ class AppHostingDomainCustomDomainStatus(dict):
524
+ @staticmethod
525
+ def __key_warning(key: str):
526
+ suggest = None
527
+ if key == "certState":
528
+ suggest = "cert_state"
529
+ elif key == "hostState":
530
+ suggest = "host_state"
531
+ elif key == "ownershipState":
532
+ suggest = "ownership_state"
533
+ elif key == "requiredDnsUpdates":
534
+ suggest = "required_dns_updates"
535
+
536
+ if suggest:
537
+ pulumi.log.warn(f"Key '{key}' not found in AppHostingDomainCustomDomainStatus. Access the value via the '{suggest}' property getter instead.")
538
+
539
+ def __getitem__(self, key: str) -> Any:
540
+ AppHostingDomainCustomDomainStatus.__key_warning(key)
541
+ return super().__getitem__(key)
542
+
543
+ def get(self, key: str, default = None) -> Any:
544
+ AppHostingDomainCustomDomainStatus.__key_warning(key)
545
+ return super().get(key, default)
546
+
547
+ def __init__(__self__, *,
548
+ cert_state: Optional[builtins.str] = None,
549
+ host_state: Optional[builtins.str] = None,
550
+ issues: Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusIssue']] = None,
551
+ ownership_state: Optional[builtins.str] = None,
552
+ required_dns_updates: Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdate']] = None):
553
+ """
554
+ :param builtins.str cert_state: (Output)
555
+ Possible values:
556
+ CERT_PREPARING
557
+ CERT_VALIDATING
558
+ CERT_PROPAGATING
559
+ CERT_ACTIVE
560
+ CERT_EXPIRING_SOON
561
+ CERT_EXPIRED
562
+ :param builtins.str host_state: (Output)
563
+ Possible values:
564
+ HOST_UNHOSTED
565
+ HOST_UNREACHABLE
566
+ HOST_NON_FAH
567
+ HOST_CONFLICT
568
+ HOST_WRONG_SHARD
569
+ HOST_ACTIVE
570
+ :param Sequence['AppHostingDomainCustomDomainStatusIssueArgs'] issues: (Output)
571
+ A list of issues with domain configuration. Allows users to self-correct
572
+ problems with DNS records.
573
+ Structure is documented below.
574
+ :param builtins.str ownership_state: (Output)
575
+ Possible values:
576
+ OWNERSHIP_MISSING
577
+ OWNERSHIP_UNREACHABLE
578
+ OWNERSHIP_MISMATCH
579
+ OWNERSHIP_CONFLICT
580
+ OWNERSHIP_PENDING
581
+ OWNERSHIP_ACTIVE
582
+ :param Sequence['AppHostingDomainCustomDomainStatusRequiredDnsUpdateArgs'] required_dns_updates: (Output)
583
+ Lists the records that must added or removed to a custom domain's DNS
584
+ in order to finish setup and start serving content.
585
+ Field is present during onboarding. Also present after onboarding if one
586
+ or more of the above states is not *_ACTIVE, indicating the domain's DNS
587
+ records are in a bad state.
588
+ Structure is documented below.
589
+ """
590
+ if cert_state is not None:
591
+ pulumi.set(__self__, "cert_state", cert_state)
592
+ if host_state is not None:
593
+ pulumi.set(__self__, "host_state", host_state)
594
+ if issues is not None:
595
+ pulumi.set(__self__, "issues", issues)
596
+ if ownership_state is not None:
597
+ pulumi.set(__self__, "ownership_state", ownership_state)
598
+ if required_dns_updates is not None:
599
+ pulumi.set(__self__, "required_dns_updates", required_dns_updates)
600
+
601
+ @property
602
+ @pulumi.getter(name="certState")
603
+ def cert_state(self) -> Optional[builtins.str]:
604
+ """
605
+ (Output)
606
+ Possible values:
607
+ CERT_PREPARING
608
+ CERT_VALIDATING
609
+ CERT_PROPAGATING
610
+ CERT_ACTIVE
611
+ CERT_EXPIRING_SOON
612
+ CERT_EXPIRED
613
+ """
614
+ return pulumi.get(self, "cert_state")
615
+
616
+ @property
617
+ @pulumi.getter(name="hostState")
618
+ def host_state(self) -> Optional[builtins.str]:
619
+ """
620
+ (Output)
621
+ Possible values:
622
+ HOST_UNHOSTED
623
+ HOST_UNREACHABLE
624
+ HOST_NON_FAH
625
+ HOST_CONFLICT
626
+ HOST_WRONG_SHARD
627
+ HOST_ACTIVE
628
+ """
629
+ return pulumi.get(self, "host_state")
630
+
631
+ @property
632
+ @pulumi.getter
633
+ def issues(self) -> Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusIssue']]:
634
+ """
635
+ (Output)
636
+ A list of issues with domain configuration. Allows users to self-correct
637
+ problems with DNS records.
638
+ Structure is documented below.
639
+ """
640
+ return pulumi.get(self, "issues")
641
+
642
+ @property
643
+ @pulumi.getter(name="ownershipState")
644
+ def ownership_state(self) -> Optional[builtins.str]:
645
+ """
646
+ (Output)
647
+ Possible values:
648
+ OWNERSHIP_MISSING
649
+ OWNERSHIP_UNREACHABLE
650
+ OWNERSHIP_MISMATCH
651
+ OWNERSHIP_CONFLICT
652
+ OWNERSHIP_PENDING
653
+ OWNERSHIP_ACTIVE
654
+ """
655
+ return pulumi.get(self, "ownership_state")
656
+
657
+ @property
658
+ @pulumi.getter(name="requiredDnsUpdates")
659
+ def required_dns_updates(self) -> Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdate']]:
660
+ """
661
+ (Output)
662
+ Lists the records that must added or removed to a custom domain's DNS
663
+ in order to finish setup and start serving content.
664
+ Field is present during onboarding. Also present after onboarding if one
665
+ or more of the above states is not *_ACTIVE, indicating the domain's DNS
666
+ records are in a bad state.
667
+ Structure is documented below.
668
+ """
669
+ return pulumi.get(self, "required_dns_updates")
670
+
671
+
672
+ @pulumi.output_type
673
+ class AppHostingDomainCustomDomainStatusIssue(dict):
674
+ def __init__(__self__, *,
675
+ code: Optional[builtins.int] = None,
676
+ details: Optional[builtins.str] = None,
677
+ message: Optional[builtins.str] = None):
678
+ """
679
+ :param builtins.int code: (Output)
680
+ The status code, which should be an enum value of google.rpc.Code.
681
+ :param builtins.str details: (Output)
682
+ A list of messages that carry the error details.
683
+ :param builtins.str message: (Output)
684
+ A developer-facing error message, which should be in English. Any
685
+ user-facing error message should be localized and sent in the
686
+ google.rpc.Status.details field, or localized by the client.
687
+ """
688
+ if code is not None:
689
+ pulumi.set(__self__, "code", code)
690
+ if details is not None:
691
+ pulumi.set(__self__, "details", details)
692
+ if message is not None:
693
+ pulumi.set(__self__, "message", message)
694
+
695
+ @property
696
+ @pulumi.getter
697
+ def code(self) -> Optional[builtins.int]:
698
+ """
699
+ (Output)
700
+ The status code, which should be an enum value of google.rpc.Code.
701
+ """
702
+ return pulumi.get(self, "code")
703
+
704
+ @property
705
+ @pulumi.getter
706
+ def details(self) -> Optional[builtins.str]:
707
+ """
708
+ (Output)
709
+ A list of messages that carry the error details.
710
+ """
711
+ return pulumi.get(self, "details")
712
+
713
+ @property
714
+ @pulumi.getter
715
+ def message(self) -> Optional[builtins.str]:
716
+ """
717
+ (Output)
718
+ A developer-facing error message, which should be in English. Any
719
+ user-facing error message should be localized and sent in the
720
+ google.rpc.Status.details field, or localized by the client.
721
+ """
722
+ return pulumi.get(self, "message")
723
+
724
+
725
+ @pulumi.output_type
726
+ class AppHostingDomainCustomDomainStatusRequiredDnsUpdate(dict):
727
+ @staticmethod
728
+ def __key_warning(key: str):
729
+ suggest = None
730
+ if key == "checkTime":
731
+ suggest = "check_time"
732
+ elif key == "domainName":
733
+ suggest = "domain_name"
734
+
735
+ if suggest:
736
+ pulumi.log.warn(f"Key '{key}' not found in AppHostingDomainCustomDomainStatusRequiredDnsUpdate. Access the value via the '{suggest}' property getter instead.")
737
+
738
+ def __getitem__(self, key: str) -> Any:
739
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdate.__key_warning(key)
740
+ return super().__getitem__(key)
741
+
742
+ def get(self, key: str, default = None) -> Any:
743
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdate.__key_warning(key)
744
+ return super().get(key, default)
745
+
746
+ def __init__(__self__, *,
747
+ check_time: Optional[builtins.str] = None,
748
+ desireds: Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesired']] = None,
749
+ discovereds: Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscovered']] = None,
750
+ domain_name: Optional[builtins.str] = None):
751
+ """
752
+ :param builtins.str check_time: (Output)
753
+ The last time App Hosting checked your custom domain's DNS records.
754
+ :param Sequence['AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredArgs'] desireds: (Output)
755
+ The set of DNS records App Hosting needs in order to be able to serve
756
+ secure content on the domain.
757
+ Structure is documented below.
758
+ :param Sequence['AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredArgs'] discovereds: (Output)
759
+ The set of DNS records App Hosting discovered when inspecting a domain.
760
+ Structure is documented below.
761
+ :param builtins.str domain_name: (Output)
762
+ The domain the record pertains to, e.g. `foo.bar.com.`.
763
+ """
764
+ if check_time is not None:
765
+ pulumi.set(__self__, "check_time", check_time)
766
+ if desireds is not None:
767
+ pulumi.set(__self__, "desireds", desireds)
768
+ if discovereds is not None:
769
+ pulumi.set(__self__, "discovereds", discovereds)
770
+ if domain_name is not None:
771
+ pulumi.set(__self__, "domain_name", domain_name)
772
+
773
+ @property
774
+ @pulumi.getter(name="checkTime")
775
+ def check_time(self) -> Optional[builtins.str]:
776
+ """
777
+ (Output)
778
+ The last time App Hosting checked your custom domain's DNS records.
779
+ """
780
+ return pulumi.get(self, "check_time")
781
+
782
+ @property
783
+ @pulumi.getter
784
+ def desireds(self) -> Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesired']]:
785
+ """
786
+ (Output)
787
+ The set of DNS records App Hosting needs in order to be able to serve
788
+ secure content on the domain.
789
+ Structure is documented below.
790
+ """
791
+ return pulumi.get(self, "desireds")
792
+
793
+ @property
794
+ @pulumi.getter
795
+ def discovereds(self) -> Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscovered']]:
796
+ """
797
+ (Output)
798
+ The set of DNS records App Hosting discovered when inspecting a domain.
799
+ Structure is documented below.
800
+ """
801
+ return pulumi.get(self, "discovereds")
802
+
803
+ @property
804
+ @pulumi.getter(name="domainName")
805
+ def domain_name(self) -> Optional[builtins.str]:
806
+ """
807
+ (Output)
808
+ The domain the record pertains to, e.g. `foo.bar.com.`.
809
+ """
810
+ return pulumi.get(self, "domain_name")
811
+
812
+
813
+ @pulumi.output_type
814
+ class AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesired(dict):
815
+ @staticmethod
816
+ def __key_warning(key: str):
817
+ suggest = None
818
+ if key == "checkErrors":
819
+ suggest = "check_errors"
820
+ elif key == "domainName":
821
+ suggest = "domain_name"
822
+
823
+ if suggest:
824
+ pulumi.log.warn(f"Key '{key}' not found in AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesired. Access the value via the '{suggest}' property getter instead.")
825
+
826
+ def __getitem__(self, key: str) -> Any:
827
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesired.__key_warning(key)
828
+ return super().__getitem__(key)
829
+
830
+ def get(self, key: str, default = None) -> Any:
831
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesired.__key_warning(key)
832
+ return super().get(key, default)
833
+
834
+ def __init__(__self__, *,
835
+ check_errors: Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredCheckError']] = None,
836
+ domain_name: Optional[builtins.str] = None,
837
+ records: Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredRecord']] = None):
838
+ """
839
+ :param Sequence['AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredCheckErrorArgs'] check_errors: (Output)
840
+ The `Status` type defines a logical error model that is suitable for
841
+ different programming environments, including REST APIs and RPC APIs. It is
842
+ used by [gRPC](https://github.com/grpc). Each `Status` message contains
843
+ three pieces of data: error code, error message, and error details.
844
+ You can find out more about this error model and how to work with it in the
845
+ [API Design Guide](https://cloud.google.com/apis/design/errors).
846
+ Structure is documented below.
847
+ :param builtins.str domain_name: (Output)
848
+ The domain the record pertains to, e.g. `foo.bar.com.`.
849
+ :param Sequence['AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredRecordArgs'] records: (Output)
850
+ Records on the domain.
851
+ Structure is documented below.
852
+ """
853
+ if check_errors is not None:
854
+ pulumi.set(__self__, "check_errors", check_errors)
855
+ if domain_name is not None:
856
+ pulumi.set(__self__, "domain_name", domain_name)
857
+ if records is not None:
858
+ pulumi.set(__self__, "records", records)
859
+
860
+ @property
861
+ @pulumi.getter(name="checkErrors")
862
+ def check_errors(self) -> Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredCheckError']]:
863
+ """
864
+ (Output)
865
+ The `Status` type defines a logical error model that is suitable for
866
+ different programming environments, including REST APIs and RPC APIs. It is
867
+ used by [gRPC](https://github.com/grpc). Each `Status` message contains
868
+ three pieces of data: error code, error message, and error details.
869
+ You can find out more about this error model and how to work with it in the
870
+ [API Design Guide](https://cloud.google.com/apis/design/errors).
871
+ Structure is documented below.
872
+ """
873
+ return pulumi.get(self, "check_errors")
874
+
875
+ @property
876
+ @pulumi.getter(name="domainName")
877
+ def domain_name(self) -> Optional[builtins.str]:
878
+ """
879
+ (Output)
880
+ The domain the record pertains to, e.g. `foo.bar.com.`.
881
+ """
882
+ return pulumi.get(self, "domain_name")
883
+
884
+ @property
885
+ @pulumi.getter
886
+ def records(self) -> Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredRecord']]:
887
+ """
888
+ (Output)
889
+ Records on the domain.
890
+ Structure is documented below.
891
+ """
892
+ return pulumi.get(self, "records")
893
+
894
+
895
+ @pulumi.output_type
896
+ class AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredCheckError(dict):
897
+ def __init__(__self__, *,
898
+ code: Optional[builtins.int] = None,
899
+ details: Optional[builtins.str] = None,
900
+ message: Optional[builtins.str] = None):
901
+ """
902
+ :param builtins.int code: (Output)
903
+ The status code, which should be an enum value of google.rpc.Code.
904
+ :param builtins.str details: (Output)
905
+ A list of messages that carry the error details.
906
+ :param builtins.str message: (Output)
907
+ A developer-facing error message, which should be in English. Any
908
+ user-facing error message should be localized and sent in the
909
+ google.rpc.Status.details field, or localized by the client.
910
+ """
911
+ if code is not None:
912
+ pulumi.set(__self__, "code", code)
913
+ if details is not None:
914
+ pulumi.set(__self__, "details", details)
915
+ if message is not None:
916
+ pulumi.set(__self__, "message", message)
917
+
918
+ @property
919
+ @pulumi.getter
920
+ def code(self) -> Optional[builtins.int]:
921
+ """
922
+ (Output)
923
+ The status code, which should be an enum value of google.rpc.Code.
924
+ """
925
+ return pulumi.get(self, "code")
926
+
927
+ @property
928
+ @pulumi.getter
929
+ def details(self) -> Optional[builtins.str]:
930
+ """
931
+ (Output)
932
+ A list of messages that carry the error details.
933
+ """
934
+ return pulumi.get(self, "details")
935
+
936
+ @property
937
+ @pulumi.getter
938
+ def message(self) -> Optional[builtins.str]:
939
+ """
940
+ (Output)
941
+ A developer-facing error message, which should be in English. Any
942
+ user-facing error message should be localized and sent in the
943
+ google.rpc.Status.details field, or localized by the client.
944
+ """
945
+ return pulumi.get(self, "message")
946
+
947
+
948
+ @pulumi.output_type
949
+ class AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredRecord(dict):
950
+ @staticmethod
951
+ def __key_warning(key: str):
952
+ suggest = None
953
+ if key == "domainName":
954
+ suggest = "domain_name"
955
+ elif key == "relevantStates":
956
+ suggest = "relevant_states"
957
+ elif key == "requiredAction":
958
+ suggest = "required_action"
959
+
960
+ if suggest:
961
+ pulumi.log.warn(f"Key '{key}' not found in AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredRecord. Access the value via the '{suggest}' property getter instead.")
962
+
963
+ def __getitem__(self, key: str) -> Any:
964
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredRecord.__key_warning(key)
965
+ return super().__getitem__(key)
966
+
967
+ def get(self, key: str, default = None) -> Any:
968
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdateDesiredRecord.__key_warning(key)
969
+ return super().get(key, default)
970
+
971
+ def __init__(__self__, *,
972
+ domain_name: Optional[builtins.str] = None,
973
+ rdata: Optional[builtins.str] = None,
974
+ relevant_states: Optional[Sequence[builtins.str]] = None,
975
+ required_action: Optional[builtins.str] = None,
976
+ type: Optional[builtins.str] = None):
977
+ """
978
+ :param builtins.str domain_name: (Output)
979
+ The domain the record pertains to, e.g. `foo.bar.com.`.
980
+ :param builtins.str rdata: (Output)
981
+ The data of the record. The meaning of the value depends on record type:
982
+ - A and AAAA: IP addresses for the domain.
983
+ - CNAME: Another domain to check for records.
984
+ - TXT: Arbitrary text strings associated with the domain. App Hosting
985
+ uses TXT records to determine which Firebase projects have
986
+ permission to act on the domain's behalf.
987
+ - CAA: The record's flags, tag, and value, e.g. `0 issue "pki.goog"`.
988
+ :param Sequence[builtins.str] relevant_states: (Output)
989
+ An enum that indicates which state(s) this DNS record applies to. Populated
990
+ for all records with an `ADD` or `REMOVE` required action.
991
+ :param builtins.str required_action: (Output)
992
+ An enum that indicates the a required action for this record. Populated
993
+ when the record is part of a required change in a `DnsUpdates`
994
+ `discovered` or `desired` record set.
995
+ Possible values:
996
+ NONE
997
+ ADD
998
+ REMOVE
999
+ :param builtins.str type: (Output)
1000
+ The record's type, which determines what data the record contains.
1001
+ Possible values:
1002
+ A
1003
+ CNAME
1004
+ TXT
1005
+ AAAA
1006
+ CAA
1007
+ """
1008
+ if domain_name is not None:
1009
+ pulumi.set(__self__, "domain_name", domain_name)
1010
+ if rdata is not None:
1011
+ pulumi.set(__self__, "rdata", rdata)
1012
+ if relevant_states is not None:
1013
+ pulumi.set(__self__, "relevant_states", relevant_states)
1014
+ if required_action is not None:
1015
+ pulumi.set(__self__, "required_action", required_action)
1016
+ if type is not None:
1017
+ pulumi.set(__self__, "type", type)
1018
+
1019
+ @property
1020
+ @pulumi.getter(name="domainName")
1021
+ def domain_name(self) -> Optional[builtins.str]:
1022
+ """
1023
+ (Output)
1024
+ The domain the record pertains to, e.g. `foo.bar.com.`.
1025
+ """
1026
+ return pulumi.get(self, "domain_name")
1027
+
1028
+ @property
1029
+ @pulumi.getter
1030
+ def rdata(self) -> Optional[builtins.str]:
1031
+ """
1032
+ (Output)
1033
+ The data of the record. The meaning of the value depends on record type:
1034
+ - A and AAAA: IP addresses for the domain.
1035
+ - CNAME: Another domain to check for records.
1036
+ - TXT: Arbitrary text strings associated with the domain. App Hosting
1037
+ uses TXT records to determine which Firebase projects have
1038
+ permission to act on the domain's behalf.
1039
+ - CAA: The record's flags, tag, and value, e.g. `0 issue "pki.goog"`.
1040
+ """
1041
+ return pulumi.get(self, "rdata")
1042
+
1043
+ @property
1044
+ @pulumi.getter(name="relevantStates")
1045
+ def relevant_states(self) -> Optional[Sequence[builtins.str]]:
1046
+ """
1047
+ (Output)
1048
+ An enum that indicates which state(s) this DNS record applies to. Populated
1049
+ for all records with an `ADD` or `REMOVE` required action.
1050
+ """
1051
+ return pulumi.get(self, "relevant_states")
1052
+
1053
+ @property
1054
+ @pulumi.getter(name="requiredAction")
1055
+ def required_action(self) -> Optional[builtins.str]:
1056
+ """
1057
+ (Output)
1058
+ An enum that indicates the a required action for this record. Populated
1059
+ when the record is part of a required change in a `DnsUpdates`
1060
+ `discovered` or `desired` record set.
1061
+ Possible values:
1062
+ NONE
1063
+ ADD
1064
+ REMOVE
1065
+ """
1066
+ return pulumi.get(self, "required_action")
1067
+
1068
+ @property
1069
+ @pulumi.getter
1070
+ def type(self) -> Optional[builtins.str]:
1071
+ """
1072
+ (Output)
1073
+ The record's type, which determines what data the record contains.
1074
+ Possible values:
1075
+ A
1076
+ CNAME
1077
+ TXT
1078
+ AAAA
1079
+ CAA
1080
+ """
1081
+ return pulumi.get(self, "type")
1082
+
1083
+
1084
+ @pulumi.output_type
1085
+ class AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscovered(dict):
1086
+ @staticmethod
1087
+ def __key_warning(key: str):
1088
+ suggest = None
1089
+ if key == "checkErrors":
1090
+ suggest = "check_errors"
1091
+ elif key == "domainName":
1092
+ suggest = "domain_name"
1093
+
1094
+ if suggest:
1095
+ pulumi.log.warn(f"Key '{key}' not found in AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscovered. Access the value via the '{suggest}' property getter instead.")
1096
+
1097
+ def __getitem__(self, key: str) -> Any:
1098
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscovered.__key_warning(key)
1099
+ return super().__getitem__(key)
1100
+
1101
+ def get(self, key: str, default = None) -> Any:
1102
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscovered.__key_warning(key)
1103
+ return super().get(key, default)
1104
+
1105
+ def __init__(__self__, *,
1106
+ check_errors: Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredCheckError']] = None,
1107
+ domain_name: Optional[builtins.str] = None,
1108
+ records: Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredRecord']] = None):
1109
+ """
1110
+ :param Sequence['AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredCheckErrorArgs'] check_errors: (Output)
1111
+ The `Status` type defines a logical error model that is suitable for
1112
+ different programming environments, including REST APIs and RPC APIs. It is
1113
+ used by [gRPC](https://github.com/grpc). Each `Status` message contains
1114
+ three pieces of data: error code, error message, and error details.
1115
+ You can find out more about this error model and how to work with it in the
1116
+ [API Design Guide](https://cloud.google.com/apis/design/errors).
1117
+ Structure is documented below.
1118
+ :param builtins.str domain_name: (Output)
1119
+ The domain the record pertains to, e.g. `foo.bar.com.`.
1120
+ :param Sequence['AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredRecordArgs'] records: (Output)
1121
+ Records on the domain.
1122
+ Structure is documented below.
1123
+ """
1124
+ if check_errors is not None:
1125
+ pulumi.set(__self__, "check_errors", check_errors)
1126
+ if domain_name is not None:
1127
+ pulumi.set(__self__, "domain_name", domain_name)
1128
+ if records is not None:
1129
+ pulumi.set(__self__, "records", records)
1130
+
1131
+ @property
1132
+ @pulumi.getter(name="checkErrors")
1133
+ def check_errors(self) -> Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredCheckError']]:
1134
+ """
1135
+ (Output)
1136
+ The `Status` type defines a logical error model that is suitable for
1137
+ different programming environments, including REST APIs and RPC APIs. It is
1138
+ used by [gRPC](https://github.com/grpc). Each `Status` message contains
1139
+ three pieces of data: error code, error message, and error details.
1140
+ You can find out more about this error model and how to work with it in the
1141
+ [API Design Guide](https://cloud.google.com/apis/design/errors).
1142
+ Structure is documented below.
1143
+ """
1144
+ return pulumi.get(self, "check_errors")
1145
+
1146
+ @property
1147
+ @pulumi.getter(name="domainName")
1148
+ def domain_name(self) -> Optional[builtins.str]:
1149
+ """
1150
+ (Output)
1151
+ The domain the record pertains to, e.g. `foo.bar.com.`.
1152
+ """
1153
+ return pulumi.get(self, "domain_name")
1154
+
1155
+ @property
1156
+ @pulumi.getter
1157
+ def records(self) -> Optional[Sequence['outputs.AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredRecord']]:
1158
+ """
1159
+ (Output)
1160
+ Records on the domain.
1161
+ Structure is documented below.
1162
+ """
1163
+ return pulumi.get(self, "records")
1164
+
1165
+
1166
+ @pulumi.output_type
1167
+ class AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredCheckError(dict):
1168
+ def __init__(__self__, *,
1169
+ code: Optional[builtins.int] = None,
1170
+ details: Optional[builtins.str] = None,
1171
+ message: Optional[builtins.str] = None):
1172
+ """
1173
+ :param builtins.int code: (Output)
1174
+ The status code, which should be an enum value of google.rpc.Code.
1175
+ :param builtins.str details: (Output)
1176
+ A list of messages that carry the error details.
1177
+ :param builtins.str message: (Output)
1178
+ A developer-facing error message, which should be in English. Any
1179
+ user-facing error message should be localized and sent in the
1180
+ google.rpc.Status.details field, or localized by the client.
1181
+ """
1182
+ if code is not None:
1183
+ pulumi.set(__self__, "code", code)
1184
+ if details is not None:
1185
+ pulumi.set(__self__, "details", details)
1186
+ if message is not None:
1187
+ pulumi.set(__self__, "message", message)
1188
+
1189
+ @property
1190
+ @pulumi.getter
1191
+ def code(self) -> Optional[builtins.int]:
1192
+ """
1193
+ (Output)
1194
+ The status code, which should be an enum value of google.rpc.Code.
1195
+ """
1196
+ return pulumi.get(self, "code")
1197
+
1198
+ @property
1199
+ @pulumi.getter
1200
+ def details(self) -> Optional[builtins.str]:
1201
+ """
1202
+ (Output)
1203
+ A list of messages that carry the error details.
1204
+ """
1205
+ return pulumi.get(self, "details")
1206
+
1207
+ @property
1208
+ @pulumi.getter
1209
+ def message(self) -> Optional[builtins.str]:
1210
+ """
1211
+ (Output)
1212
+ A developer-facing error message, which should be in English. Any
1213
+ user-facing error message should be localized and sent in the
1214
+ google.rpc.Status.details field, or localized by the client.
1215
+ """
1216
+ return pulumi.get(self, "message")
1217
+
1218
+
1219
+ @pulumi.output_type
1220
+ class AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredRecord(dict):
1221
+ @staticmethod
1222
+ def __key_warning(key: str):
1223
+ suggest = None
1224
+ if key == "domainName":
1225
+ suggest = "domain_name"
1226
+ elif key == "relevantStates":
1227
+ suggest = "relevant_states"
1228
+ elif key == "requiredAction":
1229
+ suggest = "required_action"
1230
+
1231
+ if suggest:
1232
+ pulumi.log.warn(f"Key '{key}' not found in AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredRecord. Access the value via the '{suggest}' property getter instead.")
1233
+
1234
+ def __getitem__(self, key: str) -> Any:
1235
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredRecord.__key_warning(key)
1236
+ return super().__getitem__(key)
1237
+
1238
+ def get(self, key: str, default = None) -> Any:
1239
+ AppHostingDomainCustomDomainStatusRequiredDnsUpdateDiscoveredRecord.__key_warning(key)
1240
+ return super().get(key, default)
1241
+
1242
+ def __init__(__self__, *,
1243
+ domain_name: Optional[builtins.str] = None,
1244
+ rdata: Optional[builtins.str] = None,
1245
+ relevant_states: Optional[Sequence[builtins.str]] = None,
1246
+ required_action: Optional[builtins.str] = None,
1247
+ type: Optional[builtins.str] = None):
1248
+ """
1249
+ :param builtins.str domain_name: (Output)
1250
+ The domain the record pertains to, e.g. `foo.bar.com.`.
1251
+ :param builtins.str rdata: (Output)
1252
+ The data of the record. The meaning of the value depends on record type:
1253
+ - A and AAAA: IP addresses for the domain.
1254
+ - CNAME: Another domain to check for records.
1255
+ - TXT: Arbitrary text strings associated with the domain. App Hosting
1256
+ uses TXT records to determine which Firebase projects have
1257
+ permission to act on the domain's behalf.
1258
+ - CAA: The record's flags, tag, and value, e.g. `0 issue "pki.goog"`.
1259
+ :param Sequence[builtins.str] relevant_states: (Output)
1260
+ An enum that indicates which state(s) this DNS record applies to. Populated
1261
+ for all records with an `ADD` or `REMOVE` required action.
1262
+ :param builtins.str required_action: (Output)
1263
+ An enum that indicates the a required action for this record. Populated
1264
+ when the record is part of a required change in a `DnsUpdates`
1265
+ `discovered` or `desired` record set.
1266
+ Possible values:
1267
+ NONE
1268
+ ADD
1269
+ REMOVE
1270
+ :param builtins.str type: (Output)
1271
+ The record's type, which determines what data the record contains.
1272
+ Possible values:
1273
+ A
1274
+ CNAME
1275
+ TXT
1276
+ AAAA
1277
+ CAA
1278
+ """
1279
+ if domain_name is not None:
1280
+ pulumi.set(__self__, "domain_name", domain_name)
1281
+ if rdata is not None:
1282
+ pulumi.set(__self__, "rdata", rdata)
1283
+ if relevant_states is not None:
1284
+ pulumi.set(__self__, "relevant_states", relevant_states)
1285
+ if required_action is not None:
1286
+ pulumi.set(__self__, "required_action", required_action)
1287
+ if type is not None:
1288
+ pulumi.set(__self__, "type", type)
1289
+
1290
+ @property
1291
+ @pulumi.getter(name="domainName")
1292
+ def domain_name(self) -> Optional[builtins.str]:
1293
+ """
1294
+ (Output)
1295
+ The domain the record pertains to, e.g. `foo.bar.com.`.
1296
+ """
1297
+ return pulumi.get(self, "domain_name")
1298
+
1299
+ @property
1300
+ @pulumi.getter
1301
+ def rdata(self) -> Optional[builtins.str]:
1302
+ """
1303
+ (Output)
1304
+ The data of the record. The meaning of the value depends on record type:
1305
+ - A and AAAA: IP addresses for the domain.
1306
+ - CNAME: Another domain to check for records.
1307
+ - TXT: Arbitrary text strings associated with the domain. App Hosting
1308
+ uses TXT records to determine which Firebase projects have
1309
+ permission to act on the domain's behalf.
1310
+ - CAA: The record's flags, tag, and value, e.g. `0 issue "pki.goog"`.
1311
+ """
1312
+ return pulumi.get(self, "rdata")
1313
+
1314
+ @property
1315
+ @pulumi.getter(name="relevantStates")
1316
+ def relevant_states(self) -> Optional[Sequence[builtins.str]]:
1317
+ """
1318
+ (Output)
1319
+ An enum that indicates which state(s) this DNS record applies to. Populated
1320
+ for all records with an `ADD` or `REMOVE` required action.
1321
+ """
1322
+ return pulumi.get(self, "relevant_states")
1323
+
1324
+ @property
1325
+ @pulumi.getter(name="requiredAction")
1326
+ def required_action(self) -> Optional[builtins.str]:
1327
+ """
1328
+ (Output)
1329
+ An enum that indicates the a required action for this record. Populated
1330
+ when the record is part of a required change in a `DnsUpdates`
1331
+ `discovered` or `desired` record set.
1332
+ Possible values:
1333
+ NONE
1334
+ ADD
1335
+ REMOVE
1336
+ """
1337
+ return pulumi.get(self, "required_action")
1338
+
1339
+ @property
1340
+ @pulumi.getter
1341
+ def type(self) -> Optional[builtins.str]:
1342
+ """
1343
+ (Output)
1344
+ The record's type, which determines what data the record contains.
1345
+ Possible values:
1346
+ A
1347
+ CNAME
1348
+ TXT
1349
+ AAAA
1350
+ CAA
1351
+ """
1352
+ return pulumi.get(self, "type")
1353
+
1354
+
1355
+ @pulumi.output_type
1356
+ class AppHostingDomainServe(dict):
1357
+ def __init__(__self__, *,
1358
+ redirect: Optional['outputs.AppHostingDomainServeRedirect'] = None):
1359
+ """
1360
+ :param 'AppHostingDomainServeRedirectArgs' redirect: Specifies redirect behavior for a domain.
1361
+ Structure is documented below.
1362
+ """
1363
+ if redirect is not None:
1364
+ pulumi.set(__self__, "redirect", redirect)
1365
+
1366
+ @property
1367
+ @pulumi.getter
1368
+ def redirect(self) -> Optional['outputs.AppHostingDomainServeRedirect']:
1369
+ """
1370
+ Specifies redirect behavior for a domain.
1371
+ Structure is documented below.
1372
+ """
1373
+ return pulumi.get(self, "redirect")
1374
+
1375
+
1376
+ @pulumi.output_type
1377
+ class AppHostingDomainServeRedirect(dict):
1378
+ def __init__(__self__, *,
1379
+ uri: builtins.str,
1380
+ status: Optional[builtins.str] = None):
1381
+ """
1382
+ :param builtins.str uri: The URI of the redirect's intended destination. This URI will be
1383
+ prepended to the original request path. URI without a scheme are
1384
+ assumed to be HTTPS.
1385
+ :param builtins.str status: The status code to use in a redirect response. Must be a valid HTTP 3XX
1386
+ status code. Defaults to 302 if not present.
1387
+ """
1388
+ pulumi.set(__self__, "uri", uri)
1389
+ if status is not None:
1390
+ pulumi.set(__self__, "status", status)
1391
+
1392
+ @property
1393
+ @pulumi.getter
1394
+ def uri(self) -> builtins.str:
1395
+ """
1396
+ The URI of the redirect's intended destination. This URI will be
1397
+ prepended to the original request path. URI without a scheme are
1398
+ assumed to be HTTPS.
1399
+ """
1400
+ return pulumi.get(self, "uri")
1401
+
1402
+ @property
1403
+ @pulumi.getter
1404
+ def status(self) -> Optional[builtins.str]:
1405
+ """
1406
+ The status code to use in a redirect response. Must be a valid HTTP 3XX
1407
+ status code. Defaults to 302 if not present.
1408
+ """
1409
+ return pulumi.get(self, "status")
1410
+
1411
+
1412
+ @pulumi.output_type
1413
+ class AppHostingTrafficCurrent(dict):
1414
+ def __init__(__self__, *,
1415
+ splits: Optional[Sequence['outputs.AppHostingTrafficCurrentSplit']] = None):
1416
+ """
1417
+ :param Sequence['AppHostingTrafficCurrentSplitArgs'] splits: (Output)
1418
+ A list of traffic splits that together represent where traffic is being routed.
1419
+ Structure is documented below.
1420
+ """
1421
+ if splits is not None:
1422
+ pulumi.set(__self__, "splits", splits)
1423
+
1424
+ @property
1425
+ @pulumi.getter
1426
+ def splits(self) -> Optional[Sequence['outputs.AppHostingTrafficCurrentSplit']]:
1427
+ """
1428
+ (Output)
1429
+ A list of traffic splits that together represent where traffic is being routed.
1430
+ Structure is documented below.
1431
+ """
1432
+ return pulumi.get(self, "splits")
1433
+
1434
+
1435
+ @pulumi.output_type
1436
+ class AppHostingTrafficCurrentSplit(dict):
1437
+ def __init__(__self__, *,
1438
+ build: Optional[builtins.str] = None,
1439
+ percent: Optional[builtins.int] = None):
1440
+ """
1441
+ :param builtins.str build: The build that traffic is being routed to.
1442
+ :param builtins.int percent: The percentage of traffic to send to the build. Currently must be 100 or 0.
1443
+ """
1444
+ if build is not None:
1445
+ pulumi.set(__self__, "build", build)
1446
+ if percent is not None:
1447
+ pulumi.set(__self__, "percent", percent)
1448
+
1449
+ @property
1450
+ @pulumi.getter
1451
+ def build(self) -> Optional[builtins.str]:
1452
+ """
1453
+ The build that traffic is being routed to.
1454
+ """
1455
+ return pulumi.get(self, "build")
1456
+
1457
+ @property
1458
+ @pulumi.getter
1459
+ def percent(self) -> Optional[builtins.int]:
1460
+ """
1461
+ The percentage of traffic to send to the build. Currently must be 100 or 0.
1462
+ """
1463
+ return pulumi.get(self, "percent")
1464
+
1465
+
1466
+ @pulumi.output_type
1467
+ class AppHostingTrafficRolloutPolicy(dict):
1468
+ @staticmethod
1469
+ def __key_warning(key: str):
1470
+ suggest = None
1471
+ if key == "codebaseBranch":
1472
+ suggest = "codebase_branch"
1473
+ elif key == "disabledTime":
1474
+ suggest = "disabled_time"
1475
+
1476
+ if suggest:
1477
+ pulumi.log.warn(f"Key '{key}' not found in AppHostingTrafficRolloutPolicy. Access the value via the '{suggest}' property getter instead.")
1478
+
1479
+ def __getitem__(self, key: str) -> Any:
1480
+ AppHostingTrafficRolloutPolicy.__key_warning(key)
1481
+ return super().__getitem__(key)
1482
+
1483
+ def get(self, key: str, default = None) -> Any:
1484
+ AppHostingTrafficRolloutPolicy.__key_warning(key)
1485
+ return super().get(key, default)
1486
+
1487
+ def __init__(__self__, *,
1488
+ codebase_branch: Optional[builtins.str] = None,
1489
+ disabled: Optional[builtins.bool] = None,
1490
+ disabled_time: Optional[builtins.str] = None):
1491
+ """
1492
+ :param builtins.str codebase_branch: Specifies a branch that triggers a new build to be started with this
1493
+ policy. If not set, no automatic rollouts will happen.
1494
+ :param builtins.bool disabled: A flag that, if true, prevents rollouts from being created via this RolloutPolicy.
1495
+ :param builtins.str disabled_time: (Output)
1496
+ If disabled is set, the time at which the rollouts were disabled.
1497
+ """
1498
+ if codebase_branch is not None:
1499
+ pulumi.set(__self__, "codebase_branch", codebase_branch)
1500
+ if disabled is not None:
1501
+ pulumi.set(__self__, "disabled", disabled)
1502
+ if disabled_time is not None:
1503
+ pulumi.set(__self__, "disabled_time", disabled_time)
1504
+
1505
+ @property
1506
+ @pulumi.getter(name="codebaseBranch")
1507
+ def codebase_branch(self) -> Optional[builtins.str]:
1508
+ """
1509
+ Specifies a branch that triggers a new build to be started with this
1510
+ policy. If not set, no automatic rollouts will happen.
1511
+ """
1512
+ return pulumi.get(self, "codebase_branch")
1513
+
1514
+ @property
1515
+ @pulumi.getter
1516
+ def disabled(self) -> Optional[builtins.bool]:
1517
+ """
1518
+ A flag that, if true, prevents rollouts from being created via this RolloutPolicy.
1519
+ """
1520
+ return pulumi.get(self, "disabled")
1521
+
1522
+ @property
1523
+ @pulumi.getter(name="disabledTime")
1524
+ def disabled_time(self) -> Optional[builtins.str]:
1525
+ """
1526
+ (Output)
1527
+ If disabled is set, the time at which the rollouts were disabled.
1528
+ """
1529
+ return pulumi.get(self, "disabled_time")
1530
+
1531
+
1532
+ @pulumi.output_type
1533
+ class AppHostingTrafficTarget(dict):
1534
+ def __init__(__self__, *,
1535
+ splits: Sequence['outputs.AppHostingTrafficTargetSplit']):
1536
+ """
1537
+ :param Sequence['AppHostingTrafficTargetSplitArgs'] splits: A list of traffic splits that together represent where traffic is being routed.
1538
+ Structure is documented below.
1539
+ """
1540
+ pulumi.set(__self__, "splits", splits)
1541
+
1542
+ @property
1543
+ @pulumi.getter
1544
+ def splits(self) -> Sequence['outputs.AppHostingTrafficTargetSplit']:
1545
+ """
1546
+ A list of traffic splits that together represent where traffic is being routed.
1547
+ Structure is documented below.
1548
+ """
1549
+ return pulumi.get(self, "splits")
1550
+
1551
+
1552
+ @pulumi.output_type
1553
+ class AppHostingTrafficTargetSplit(dict):
1554
+ def __init__(__self__, *,
1555
+ build: builtins.str,
1556
+ percent: builtins.int):
1557
+ """
1558
+ :param builtins.str build: The build that traffic is being routed to.
1559
+ :param builtins.int percent: The percentage of traffic to send to the build. Currently must be 100 or 0.
1560
+ """
1561
+ pulumi.set(__self__, "build", build)
1562
+ pulumi.set(__self__, "percent", percent)
1563
+
1564
+ @property
1565
+ @pulumi.getter
1566
+ def build(self) -> builtins.str:
1567
+ """
1568
+ The build that traffic is being routed to.
1569
+ """
1570
+ return pulumi.get(self, "build")
1571
+
1572
+ @property
1573
+ @pulumi.getter
1574
+ def percent(self) -> builtins.int:
1575
+ """
1576
+ The percentage of traffic to send to the build. Currently must be 100 or 0.
1577
+ """
1578
+ return pulumi.get(self, "percent")
1579
+
1580
+
506
1581
  @pulumi.output_type
507
1582
  class ExtensionsInstanceConfig(dict):
508
1583
  @staticmethod